armdevcenter

package module
v3.0.0-beta.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 9, 2026 License: MIT Imports: 15 Imported by: 0

README

Azure Dev Center Module for Go

The armdevcenter module provides operations for working with Azure Dev Center.

Source code

Getting started

Prerequisites

  • an Azure subscription
  • Supported version of Go (You could download and install the latest version of Go from here. It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this doc.)

Install the package

This project uses Go modules for versioning and dependency management.

Install the Azure Dev Center module:

go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3

Authorization

When creating a client, you will need to provide a credential for authenticating with Azure Dev Center. The azidentity module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more.

cred, err := azidentity.NewDefaultAzureCredential(nil)

For more information on authentication, please see the documentation for azidentity at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity.

Client Factory

Azure Dev Center module consists of one or more clients. We provide a client factory which could be used to create any client in this module.

clientFactory, err := armdevcenter.NewClientFactory(<subscription ID>, cred, nil)

You can use ClientOptions in package github.com/Azure/azure-sdk-for-go/sdk/azcore/arm to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for azcore at pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore.

options := arm.ClientOptions {
    ClientOptions: azcore.ClientOptions {
        Cloud: cloud.AzureChina,
    },
}
clientFactory, err := armdevcenter.NewClientFactory(<subscription ID>, cred, &options)

Clients

A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory.

client := clientFactory.NewAttachedNetworksClient()

Fakes

The fake package contains types used for constructing in-memory fake servers used in unit tests. This allows writing tests to cover various success/error conditions without the need for connecting to a live service.

Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes.

Provide Feedback

If you encounter bugs or have suggestions, please open an issue and assign the Dev Center label.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionType

type ActionType string

ActionType - Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.

const (
	// ActionTypeInternal - Actions are for internal-only APIs.
	ActionTypeInternal ActionType = "Internal"
)

func PossibleActionTypeValues

func PossibleActionTypeValues() []ActionType

PossibleActionTypeValues returns the possible values for the ActionType const type.

type ActiveHoursConfiguration

type ActiveHoursConfiguration struct {
	// Enables or disables whether the Dev Box should be automatically started at commencement of active hours.
	AutoStartEnableStatus *AutoStartEnableStatus

	// The maximum amount of days per week that a user can enable active hours related features.
	DaysOfWeekLimit *int32

	// The days of the week that active hours features will be enabled. This serves as a default that can be updated by each individual
	// user.
	DefaultDaysOfWeek []*DayOfWeek

	// The default end time of the active hours.
	DefaultEndTimeHour *int32

	// The default start time of the active hours.
	DefaultStartTimeHour *int32

	// The default IANA timezone id of the active hours.
	DefaultTimeZone *string

	// Enables or disables whether the Dev Box should be kept awake during active hours.
	KeepAwakeEnableStatus *KeepAwakeEnableStatus
}

ActiveHoursConfiguration - Active hours configuration.

func (ActiveHoursConfiguration) MarshalJSON

func (a ActiveHoursConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ActiveHoursConfiguration.

func (*ActiveHoursConfiguration) UnmarshalJSON

func (a *ActiveHoursConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ActiveHoursConfiguration.

type AllowedEnvironmentType

type AllowedEnvironmentType struct {
	// Properties of an allowed environment type.
	Properties *AllowedEnvironmentTypeProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

AllowedEnvironmentType - Represents an allowed environment type.

func (AllowedEnvironmentType) MarshalJSON

func (a AllowedEnvironmentType) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AllowedEnvironmentType.

func (*AllowedEnvironmentType) UnmarshalJSON

func (a *AllowedEnvironmentType) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AllowedEnvironmentType.

type AllowedEnvironmentTypeListResult

type AllowedEnvironmentTypeListResult struct {
	// READ-ONLY; The AllowedEnvironmentType items on this page
	Value []*AllowedEnvironmentType

	// The link to the next page of items
	NextLink *string
}

AllowedEnvironmentTypeListResult - Paged collection of AllowedEnvironmentType items

func (AllowedEnvironmentTypeListResult) MarshalJSON

func (a AllowedEnvironmentTypeListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AllowedEnvironmentTypeListResult.

func (*AllowedEnvironmentTypeListResult) UnmarshalJSON

func (a *AllowedEnvironmentTypeListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AllowedEnvironmentTypeListResult.

type AllowedEnvironmentTypeProperties

type AllowedEnvironmentTypeProperties struct {
	// READ-ONLY; The display name of the allowed environment type.
	DisplayName *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

AllowedEnvironmentTypeProperties - Properties of an allowed environment type.

func (AllowedEnvironmentTypeProperties) MarshalJSON

func (a AllowedEnvironmentTypeProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AllowedEnvironmentTypeProperties.

func (*AllowedEnvironmentTypeProperties) UnmarshalJSON

func (a *AllowedEnvironmentTypeProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AllowedEnvironmentTypeProperties.

type ArchitectureType

type ArchitectureType string

ArchitectureType - Architecture Types.

const (
	// ArchitectureTypeArm64 - ARM64 architecture
	ArchitectureTypeArm64 ArchitectureType = "Arm64"
	// ArchitectureTypeX64 - x64 architecture
	ArchitectureTypeX64 ArchitectureType = "x64"
)

func PossibleArchitectureTypeValues

func PossibleArchitectureTypeValues() []ArchitectureType

PossibleArchitectureTypeValues returns the possible values for the ArchitectureType const type.

type AssignedGroup

type AssignedGroup struct {
	// The Entra group object ID (GUID).
	ObjectID *string

	// The scope of the assignment.
	Scope *AssignedGroupScope
}

AssignedGroup - Represents an Entra group assigned to this Project, entitling all members to resources for the given scope.

func (AssignedGroup) MarshalJSON

func (a AssignedGroup) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AssignedGroup.

func (*AssignedGroup) UnmarshalJSON

func (a *AssignedGroup) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AssignedGroup.

type AssignedGroupScope

type AssignedGroupScope string

AssignedGroupScope - The scope of an assignment.

const (
	// AssignedGroupScopeDevBox - Assignment entitles group members to Dev Boxes in the Project.
	AssignedGroupScopeDevBox AssignedGroupScope = "DevBox"
)

func PossibleAssignedGroupScopeValues

func PossibleAssignedGroupScopeValues() []AssignedGroupScope

PossibleAssignedGroupScopeValues returns the possible values for the AssignedGroupScope const type.

type AttachedNetworkConnection

type AttachedNetworkConnection struct {
	// Attached NetworkConnection properties.
	Properties *AttachedNetworkConnectionProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

AttachedNetworkConnection - Represents an attached NetworkConnection.

func (AttachedNetworkConnection) MarshalJSON

func (a AttachedNetworkConnection) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AttachedNetworkConnection.

func (*AttachedNetworkConnection) UnmarshalJSON

func (a *AttachedNetworkConnection) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AttachedNetworkConnection.

type AttachedNetworkConnectionProperties

type AttachedNetworkConnectionProperties struct {
	// The resource ID of the NetworkConnection you want to attach.
	NetworkConnectionID *string

	// READ-ONLY; AAD Join type of the network. This is populated based on the referenced Network Connection.
	DomainJoinType *DomainJoinType

	// READ-ONLY; Health check status values.
	HealthCheckStatus *HealthCheckStatus

	// READ-ONLY; The geo-location where the NetworkConnection resource specified in 'networkConnectionResourceId' property lives.
	NetworkConnectionLocation *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

AttachedNetworkConnectionProperties - Properties of an attached NetworkConnection.

func (AttachedNetworkConnectionProperties) MarshalJSON

func (a AttachedNetworkConnectionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AttachedNetworkConnectionProperties.

func (*AttachedNetworkConnectionProperties) UnmarshalJSON

func (a *AttachedNetworkConnectionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AttachedNetworkConnectionProperties.

type AttachedNetworkListResult

type AttachedNetworkListResult struct {
	// READ-ONLY; The AttachedNetworkConnection items on this page
	Value []*AttachedNetworkConnection

	// The link to the next page of items
	NextLink *string
}

AttachedNetworkListResult - Paged collection of AttachedNetworkConnection items

func (AttachedNetworkListResult) MarshalJSON

func (a AttachedNetworkListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AttachedNetworkListResult.

func (*AttachedNetworkListResult) UnmarshalJSON

func (a *AttachedNetworkListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AttachedNetworkListResult.

type AttachedNetworksClient

type AttachedNetworksClient struct {
	// contains filtered or unexported fields
}

AttachedNetworksClient contains the methods for the AttachedNetworks group. Don't use this type directly, use NewAttachedNetworksClient() instead.

Generated from API version 2026-01-01-preview

func NewAttachedNetworksClient

func NewAttachedNetworksClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AttachedNetworksClient, error)

NewAttachedNetworksClient creates a new instance of AttachedNetworksClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*AttachedNetworksClient) BeginCreateOrUpdate

func (client *AttachedNetworksClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, attachedNetworkConnectionName string, body AttachedNetworkConnection, options *AttachedNetworksClientBeginCreateOrUpdateOptions) (*runtime.Poller[AttachedNetworksClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates an attached NetworkConnection. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • attachedNetworkConnectionName - The name of the attached NetworkConnection.
  • body - Represents an attached NetworkConnection.
  • options - AttachedNetworksClientBeginCreateOrUpdateOptions contains the optional parameters for the AttachedNetworksClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_Create.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAttachedNetworksClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "network-uswest3", armdevcenter.AttachedNetworkConnection{
		Properties: &armdevcenter.AttachedNetworkConnectionProperties{
			NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.AttachedNetworksClientCreateOrUpdateResponse{
	// 	AttachedNetworkConnection: armdevcenter.AttachedNetworkConnection{
	// 		Name: to.Ptr("network-uswest3"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/attachednetworks"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-uswest3"),
	// 		Properties: &armdevcenter.AttachedNetworkConnectionProperties{
	// 			NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*AttachedNetworksClient) BeginDelete

func (client *AttachedNetworksClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, attachedNetworkConnectionName string, options *AttachedNetworksClientBeginDeleteOptions) (*runtime.Poller[AttachedNetworksClientDeleteResponse], error)

BeginDelete - Un-attach a NetworkConnection. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • attachedNetworkConnectionName - The name of the attached NetworkConnection.
  • options - AttachedNetworksClientBeginDeleteOptions contains the optional parameters for the AttachedNetworksClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewAttachedNetworksClient().BeginDelete(ctx, "rg1", "Contoso", "network-uswest3", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*AttachedNetworksClient) GetByDevCenter

func (client *AttachedNetworksClient) GetByDevCenter(ctx context.Context, resourceGroupName string, devCenterName string, attachedNetworkConnectionName string, options *AttachedNetworksClientGetByDevCenterOptions) (AttachedNetworksClientGetByDevCenterResponse, error)

GetByDevCenter - Gets an attached NetworkConnection. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • attachedNetworkConnectionName - The name of the attached NetworkConnection.
  • options - AttachedNetworksClientGetByDevCenterOptions contains the optional parameters for the AttachedNetworksClient.GetByDevCenter method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_GetByDevCenter.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewAttachedNetworksClient().GetByDevCenter(ctx, "rg1", "Contoso", "network-uswest3", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.AttachedNetworksClientGetByDevCenterResponse{
	// 	AttachedNetworkConnection: armdevcenter.AttachedNetworkConnection{
	// 		Name: to.Ptr("network-uswest3"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/attachednetworks"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-uswest3"),
	// 		Properties: &armdevcenter.AttachedNetworkConnectionProperties{
	// 			HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
	// 			NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
	// 			NetworkConnectionLocation: to.Ptr("centralus"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateCreated),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*AttachedNetworksClient) GetByProject

func (client *AttachedNetworksClient) GetByProject(ctx context.Context, resourceGroupName string, projectName string, attachedNetworkConnectionName string, options *AttachedNetworksClientGetByProjectOptions) (AttachedNetworksClientGetByProjectResponse, error)

GetByProject - Gets an attached NetworkConnection. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • attachedNetworkConnectionName - The name of the attached NetworkConnection.
  • options - AttachedNetworksClientGetByProjectOptions contains the optional parameters for the AttachedNetworksClient.GetByProject method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_GetByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewAttachedNetworksClient().GetByProject(ctx, "rg1", "DevProject", "network-uswest3", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.AttachedNetworksClientGetByProjectResponse{
	// 	AttachedNetworkConnection: armdevcenter.AttachedNetworkConnection{
	// 		Name: to.Ptr("network-uswest3"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/attachednetworks"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/network-uswest3"),
	// 		Properties: &armdevcenter.AttachedNetworkConnectionProperties{
	// 			HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
	// 			NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
	// 			NetworkConnectionLocation: to.Ptr("centralus"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateCreated),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*AttachedNetworksClient) NewListByDevCenterPager

func (client *AttachedNetworksClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *AttachedNetworksClientListByDevCenterOptions) *runtime.Pager[AttachedNetworksClientListByDevCenterResponse]

NewListByDevCenterPager - Lists the attached NetworkConnections for a DevCenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - AttachedNetworksClientListByDevCenterOptions contains the optional parameters for the AttachedNetworksClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_ListByDevCenter.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewAttachedNetworksClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.AttachedNetworksClientListByDevCenterResponse{
		// 	AttachedNetworkListResult: armdevcenter.AttachedNetworkListResult{
		// 		Value: []*armdevcenter.AttachedNetworkConnection{
		// 			{
		// 				Name: to.Ptr("netmap1"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/attachedNetworks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/netmap1"),
		// 				Properties: &armdevcenter.AttachedNetworkConnectionProperties{
		// 					HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
		// 					NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
		// 					NetworkConnectionLocation: to.Ptr("centralus"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("netmap2"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/attachedNetworks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/netmap2"),
		// 				Properties: &armdevcenter.AttachedNetworkConnectionProperties{
		// 					HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
		// 					NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/network-uswest3"),
		// 					NetworkConnectionLocation: to.Ptr("centralus"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*AttachedNetworksClient) NewListByProjectPager

func (client *AttachedNetworksClient) NewListByProjectPager(resourceGroupName string, projectName string, options *AttachedNetworksClientListByProjectOptions) *runtime.Pager[AttachedNetworksClientListByProjectResponse]

NewListByProjectPager - Lists the attached NetworkConnections for a Project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - AttachedNetworksClientListByProjectOptions contains the optional parameters for the AttachedNetworksClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/AttachedNetworks_ListByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewAttachedNetworksClient().NewListByProjectPager("rg1", "DevProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.AttachedNetworksClientListByProjectResponse{
		// 	AttachedNetworkListResult: armdevcenter.AttachedNetworkListResult{
		// 		Value: []*armdevcenter.AttachedNetworkConnection{
		// 			{
		// 				Name: to.Ptr("netmap1"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/attachedNetworks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/netmap1"),
		// 				Properties: &armdevcenter.AttachedNetworkConnectionProperties{
		// 					HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
		// 					NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
		// 					NetworkConnectionLocation: to.Ptr("centralus"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("netmap2"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/attachedNetworks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/attachednetworks/netmap2"),
		// 				Properties: &armdevcenter.AttachedNetworkConnectionProperties{
		// 					HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatus("Healthy")),
		// 					NetworkConnectionID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/NetworkConnections/network-uswest3"),
		// 					NetworkConnectionLocation: to.Ptr("centralus"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type AttachedNetworksClientBeginCreateOrUpdateOptions

type AttachedNetworksClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

AttachedNetworksClientBeginCreateOrUpdateOptions contains the optional parameters for the AttachedNetworksClient.BeginCreateOrUpdate method.

type AttachedNetworksClientBeginDeleteOptions

type AttachedNetworksClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

AttachedNetworksClientBeginDeleteOptions contains the optional parameters for the AttachedNetworksClient.BeginDelete method.

type AttachedNetworksClientCreateOrUpdateResponse

type AttachedNetworksClientCreateOrUpdateResponse struct {
	// Represents an attached NetworkConnection.
	AttachedNetworkConnection
}

AttachedNetworksClientCreateOrUpdateResponse contains the response from method AttachedNetworksClient.BeginCreateOrUpdate.

type AttachedNetworksClientDeleteResponse

type AttachedNetworksClientDeleteResponse struct {
}

AttachedNetworksClientDeleteResponse contains the response from method AttachedNetworksClient.BeginDelete.

type AttachedNetworksClientGetByDevCenterOptions

type AttachedNetworksClientGetByDevCenterOptions struct {
}

AttachedNetworksClientGetByDevCenterOptions contains the optional parameters for the AttachedNetworksClient.GetByDevCenter method.

type AttachedNetworksClientGetByDevCenterResponse

type AttachedNetworksClientGetByDevCenterResponse struct {
	// Represents an attached NetworkConnection.
	AttachedNetworkConnection
}

AttachedNetworksClientGetByDevCenterResponse contains the response from method AttachedNetworksClient.GetByDevCenter.

type AttachedNetworksClientGetByProjectOptions

type AttachedNetworksClientGetByProjectOptions struct {
}

AttachedNetworksClientGetByProjectOptions contains the optional parameters for the AttachedNetworksClient.GetByProject method.

type AttachedNetworksClientGetByProjectResponse

type AttachedNetworksClientGetByProjectResponse struct {
	// Represents an attached NetworkConnection.
	AttachedNetworkConnection
}

AttachedNetworksClientGetByProjectResponse contains the response from method AttachedNetworksClient.GetByProject.

type AttachedNetworksClientListByDevCenterOptions

type AttachedNetworksClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

AttachedNetworksClientListByDevCenterOptions contains the optional parameters for the AttachedNetworksClient.NewListByDevCenterPager method.

type AttachedNetworksClientListByDevCenterResponse

type AttachedNetworksClientListByDevCenterResponse struct {
	// Paged collection of AttachedNetworkConnection items
	AttachedNetworkListResult
}

AttachedNetworksClientListByDevCenterResponse contains the response from method AttachedNetworksClient.NewListByDevCenterPager.

type AttachedNetworksClientListByProjectOptions

type AttachedNetworksClientListByProjectOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

AttachedNetworksClientListByProjectOptions contains the optional parameters for the AttachedNetworksClient.NewListByProjectPager method.

type AttachedNetworksClientListByProjectResponse

type AttachedNetworksClientListByProjectResponse struct {
	// Paged collection of AttachedNetworkConnection items
	AttachedNetworkListResult
}

AttachedNetworksClientListByProjectResponse contains the response from method AttachedNetworksClient.NewListByProjectPager.

type AutoImageBuildStatus

type AutoImageBuildStatus string

AutoImageBuildStatus - Indicates whether auto image build is enabled/disabled.

const (
	// AutoImageBuildStatusDisabled - Auto image build is disabled.
	AutoImageBuildStatusDisabled AutoImageBuildStatus = "Disabled"
	// AutoImageBuildStatusEnabled - Auto image build is enabled.
	AutoImageBuildStatusEnabled AutoImageBuildStatus = "Enabled"
)

func PossibleAutoImageBuildStatusValues

func PossibleAutoImageBuildStatusValues() []AutoImageBuildStatus

PossibleAutoImageBuildStatusValues returns the possible values for the AutoImageBuildStatus const type.

type AutoStartEnableStatus

type AutoStartEnableStatus string

AutoStartEnableStatus - Enables or disables whether Dev Boxes should be automatically started at commencement of active hours.

const (
	// AutoStartEnableStatusDisabled - Auto start is disabled.
	AutoStartEnableStatusDisabled AutoStartEnableStatus = "Disabled"
	// AutoStartEnableStatusEnabled - Auto start is enabled.
	AutoStartEnableStatusEnabled AutoStartEnableStatus = "Enabled"
)

func PossibleAutoStartEnableStatusValues

func PossibleAutoStartEnableStatusValues() []AutoStartEnableStatus

PossibleAutoStartEnableStatusValues returns the possible values for the AutoStartEnableStatus const type.

type AzureAiServicesMode

type AzureAiServicesMode string

AzureAiServicesMode - Indicates whether Azure AI services are enabled for a project.

const (
	// AzureAiServicesModeAutoDeploy - Azure AI services are enabled for this project and necessary resources will be automatically
	// setup.
	AzureAiServicesModeAutoDeploy AzureAiServicesMode = "AutoDeploy"
	// AzureAiServicesModeDisabled - Azure AI services are disabled for this project.
	AzureAiServicesModeDisabled AzureAiServicesMode = "Disabled"
)

func PossibleAzureAiServicesModeValues

func PossibleAzureAiServicesModeValues() []AzureAiServicesMode

PossibleAzureAiServicesModeValues returns the possible values for the AzureAiServicesMode const type.

type AzureAiServicesSettings

type AzureAiServicesSettings struct {
	// The property indicates whether Azure AI services is enabled.
	AzureAiServicesMode *AzureAiServicesMode
}

AzureAiServicesSettings - Configures Azure AI related services for the project.

func (AzureAiServicesSettings) MarshalJSON

func (a AzureAiServicesSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type AzureAiServicesSettings.

func (*AzureAiServicesSettings) UnmarshalJSON

func (a *AzureAiServicesSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type AzureAiServicesSettings.

type CancelOnConnectEnableStatus

type CancelOnConnectEnableStatus string

CancelOnConnectEnableStatus - Indicates whether cancel on connect is enabled.

const (
	// CancelOnConnectEnableStatusDisabled - Cancel on connect is disabled.
	CancelOnConnectEnableStatusDisabled CancelOnConnectEnableStatus = "Disabled"
	// CancelOnConnectEnableStatusEnabled - Cancel on connect is enabled.
	CancelOnConnectEnableStatusEnabled CancelOnConnectEnableStatus = "Enabled"
)

func PossibleCancelOnConnectEnableStatusValues

func PossibleCancelOnConnectEnableStatusValues() []CancelOnConnectEnableStatus

PossibleCancelOnConnectEnableStatusValues returns the possible values for the CancelOnConnectEnableStatus const type.

type Capability

type Capability struct {
	// READ-ONLY; Name of the capability.
	Name *string

	// READ-ONLY; Value of the capability.
	Value *string
}

Capability - A name/value pair to describe a capability.

func (Capability) MarshalJSON

func (c Capability) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Capability.

func (*Capability) UnmarshalJSON

func (c *Capability) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Capability.

type Catalog

type Catalog struct {
	// Catalog properties.
	Properties *CatalogProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Catalog - Represents a catalog.

func (Catalog) MarshalJSON

func (c Catalog) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Catalog.

func (*Catalog) UnmarshalJSON

func (c *Catalog) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Catalog.

type CatalogAutoImageBuildEnableStatus

type CatalogAutoImageBuildEnableStatus string

CatalogAutoImageBuildEnableStatus - Indicates whether auto image build is enabled/disabled for image definitions in the catalog.

const (
	// CatalogAutoImageBuildEnableStatusDisabled - Auto image build is disabled.
	CatalogAutoImageBuildEnableStatusDisabled CatalogAutoImageBuildEnableStatus = "Disabled"
	// CatalogAutoImageBuildEnableStatusEnabled - Auto image build is enabled.
	CatalogAutoImageBuildEnableStatusEnabled CatalogAutoImageBuildEnableStatus = "Enabled"
)

func PossibleCatalogAutoImageBuildEnableStatusValues

func PossibleCatalogAutoImageBuildEnableStatusValues() []CatalogAutoImageBuildEnableStatus

PossibleCatalogAutoImageBuildEnableStatusValues returns the possible values for the CatalogAutoImageBuildEnableStatus const type.

type CatalogConflictError

type CatalogConflictError struct {
	// READ-ONLY; Name of the conflicting catalog item.
	Name *string

	// READ-ONLY; The path of the file that has a conflicting name.
	Path *string
}

CatalogConflictError - An individual conflict error.

func (CatalogConflictError) MarshalJSON

func (c CatalogConflictError) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogConflictError.

func (*CatalogConflictError) UnmarshalJSON

func (c *CatalogConflictError) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogConflictError.

type CatalogConnectionState

type CatalogConnectionState string

CatalogConnectionState - The connection state of the catalog.

const (
	// CatalogConnectionStateConnected - Connected state.
	CatalogConnectionStateConnected CatalogConnectionState = "Connected"
	// CatalogConnectionStateDisconnected - Disconnected state.
	CatalogConnectionStateDisconnected CatalogConnectionState = "Disconnected"
)

func PossibleCatalogConnectionStateValues

func PossibleCatalogConnectionStateValues() []CatalogConnectionState

PossibleCatalogConnectionStateValues returns the possible values for the CatalogConnectionState const type.

type CatalogErrorDetails

type CatalogErrorDetails struct {
	// An identifier for the error.
	Code *string

	// A message describing the error.
	Message *string
}

CatalogErrorDetails - Catalog error details

func (CatalogErrorDetails) MarshalJSON

func (c CatalogErrorDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogErrorDetails.

func (*CatalogErrorDetails) UnmarshalJSON

func (c *CatalogErrorDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogErrorDetails.

type CatalogImageDefinitionBuildClient

type CatalogImageDefinitionBuildClient struct {
	// contains filtered or unexported fields
}

CatalogImageDefinitionBuildClient contains the methods for the CatalogImageDefinitionBuild group. Don't use this type directly, use NewCatalogImageDefinitionBuildClient() instead.

Generated from API version 2026-01-01-preview

func NewCatalogImageDefinitionBuildClient

func NewCatalogImageDefinitionBuildClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CatalogImageDefinitionBuildClient, error)

NewCatalogImageDefinitionBuildClient creates a new instance of CatalogImageDefinitionBuildClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CatalogImageDefinitionBuildClient) BeginCancel

func (client *CatalogImageDefinitionBuildClient) BeginCancel(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, buildName string, options *CatalogImageDefinitionBuildClientBeginCancelOptions) (*runtime.Poller[CatalogImageDefinitionBuildClientCancelResponse], error)

BeginCancel - Cancels the specified build for an image definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - CatalogImageDefinitionBuildClientBeginCancelOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.BeginCancel method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_CancelImageBuild.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogImageDefinitionBuildClient().BeginCancel(ctx, "rg1", "DevDevCenter", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*CatalogImageDefinitionBuildClient) Get

func (client *CatalogImageDefinitionBuildClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, buildName string, options *CatalogImageDefinitionBuildClientGetOptions) (CatalogImageDefinitionBuildClientGetResponse, error)

Get - Gets a build for a specified image definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - CatalogImageDefinitionBuildClientGetOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_GetImageBuild.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogImageDefinitionBuildClient().Get(ctx, "rg1", "DevDevCenter", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogImageDefinitionBuildClientGetResponse{
	// 	ImageDefinitionBuild: armdevcenter.ImageDefinitionBuild{
	// 		Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 		Type: to.Ptr("Microsoft.DevCenter/centers/catalogs/imageDefinitions/builds"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/DevDevCenter/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 		Properties: &armdevcenter.ImageDefinitionBuildProperties{
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CatalogImageDefinitionBuildClient) GetBuildDetails

func (client *CatalogImageDefinitionBuildClient) GetBuildDetails(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, buildName string, options *CatalogImageDefinitionBuildClientGetBuildDetailsOptions) (CatalogImageDefinitionBuildClientGetBuildDetailsResponse, error)

GetBuildDetails - Gets Build details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - CatalogImageDefinitionBuildClientGetBuildDetailsOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.GetBuildDetails method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_GetImageBuildDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogImageDefinitionBuildClient().GetBuildDetails(ctx, "rg1", "DevDevCenter", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogImageDefinitionBuildClientGetBuildDetailsResponse{
	// 	ImageDefinitionBuildDetails: armdevcenter.ImageDefinitionBuildDetails{
	// 		ImageReference: &armdevcenter.ImageReference{
	// 			ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 		},
	// 		Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 		TaskGroups: []*armdevcenter.ImageDefinitionBuildTaskGroup{
	// 			{
	// 				Name: to.Ptr("Provisioning"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("Provisioning"),
	// 						DisplayName: to.Ptr("Provisioning"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						ID: to.Ptr("e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						LogURI: to.Ptr(""),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 			{
	// 				Name: to.Ptr("Customizations"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("vs2022"),
	// 						DisplayName: to.Ptr("Install Visual Studio 2022"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						ID: to.Ptr("e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						LogURI: to.Ptr("https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7/logs/e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 			{
	// 				Name: to.Ptr("Generalization"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("Generalization"),
	// 						DisplayName: to.Ptr("Generalization"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						LogURI: to.Ptr(""),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 		},
	// 	},
	// }
}

type CatalogImageDefinitionBuildClientBeginCancelOptions

type CatalogImageDefinitionBuildClientBeginCancelOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogImageDefinitionBuildClientBeginCancelOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.BeginCancel method.

type CatalogImageDefinitionBuildClientCancelResponse

type CatalogImageDefinitionBuildClientCancelResponse struct {
}

CatalogImageDefinitionBuildClientCancelResponse contains the response from method CatalogImageDefinitionBuildClient.BeginCancel.

type CatalogImageDefinitionBuildClientGetBuildDetailsOptions

type CatalogImageDefinitionBuildClientGetBuildDetailsOptions struct {
}

CatalogImageDefinitionBuildClientGetBuildDetailsOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.GetBuildDetails method.

type CatalogImageDefinitionBuildClientGetBuildDetailsResponse

type CatalogImageDefinitionBuildClientGetBuildDetailsResponse struct {
	// Represents a specific build of an Image Definition.
	ImageDefinitionBuildDetails
}

CatalogImageDefinitionBuildClientGetBuildDetailsResponse contains the response from method CatalogImageDefinitionBuildClient.GetBuildDetails.

type CatalogImageDefinitionBuildClientGetOptions

type CatalogImageDefinitionBuildClientGetOptions struct {
}

CatalogImageDefinitionBuildClientGetOptions contains the optional parameters for the CatalogImageDefinitionBuildClient.Get method.

type CatalogImageDefinitionBuildClientGetResponse

type CatalogImageDefinitionBuildClientGetResponse struct {
	// Represents a specific build of an Image Definition.
	ImageDefinitionBuild
}

CatalogImageDefinitionBuildClientGetResponse contains the response from method CatalogImageDefinitionBuildClient.Get.

type CatalogImageDefinitionBuildsClient

type CatalogImageDefinitionBuildsClient struct {
	// contains filtered or unexported fields
}

CatalogImageDefinitionBuildsClient contains the methods for the CatalogImageDefinitionBuilds group. Don't use this type directly, use NewCatalogImageDefinitionBuildsClient() instead.

Generated from API version 2026-01-01-preview

func NewCatalogImageDefinitionBuildsClient

func NewCatalogImageDefinitionBuildsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CatalogImageDefinitionBuildsClient, error)

NewCatalogImageDefinitionBuildsClient creates a new instance of CatalogImageDefinitionBuildsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CatalogImageDefinitionBuildsClient) NewListByImageDefinitionPager

func (client *CatalogImageDefinitionBuildsClient) NewListByImageDefinitionPager(resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, options *CatalogImageDefinitionBuildsClientListByImageDefinitionOptions) *runtime.Pager[CatalogImageDefinitionBuildsClientListByImageDefinitionResponse]

NewListByImageDefinitionPager - Lists builds for a specified image definition.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - CatalogImageDefinitionBuildsClientListByImageDefinitionOptions contains the optional parameters for the CatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_ListImageBuildsByImageDefinition.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCatalogImageDefinitionBuildsClient().NewListByImageDefinitionPager("rg1", "DevDevCenter", "CentralCatalog", "DefaultDevImage", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.CatalogImageDefinitionBuildsClientListByImageDefinitionResponse{
		// 	ImageDefinitionBuildListResult: armdevcenter.ImageDefinitionBuildListResult{
		// 		Value: []*armdevcenter.ImageDefinitionBuild{
		// 			{
		// 				Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/imageDefinitions/builds"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/DevDevCenter/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 				Properties: &armdevcenter.ImageDefinitionBuildProperties{
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type CatalogImageDefinitionBuildsClientListByImageDefinitionOptions

type CatalogImageDefinitionBuildsClientListByImageDefinitionOptions struct {
}

CatalogImageDefinitionBuildsClientListByImageDefinitionOptions contains the optional parameters for the CatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager method.

type CatalogImageDefinitionBuildsClientListByImageDefinitionResponse

type CatalogImageDefinitionBuildsClientListByImageDefinitionResponse struct {
	// Paged collection of ImageDefinitionBuild items
	ImageDefinitionBuildListResult
}

CatalogImageDefinitionBuildsClientListByImageDefinitionResponse contains the response from method CatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager.

type CatalogImageDefinitionsClient

type CatalogImageDefinitionsClient struct {
	// contains filtered or unexported fields
}

CatalogImageDefinitionsClient contains the methods for the CatalogImageDefinitions group. Don't use this type directly, use NewCatalogImageDefinitionsClient() instead.

Generated from API version 2026-01-01-preview

func NewCatalogImageDefinitionsClient

func NewCatalogImageDefinitionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CatalogImageDefinitionsClient, error)

NewCatalogImageDefinitionsClient creates a new instance of CatalogImageDefinitionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CatalogImageDefinitionsClient) BeginBuildImage

func (client *CatalogImageDefinitionsClient) BeginBuildImage(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, options *CatalogImageDefinitionsClientBeginBuildImageOptions) (*runtime.Poller[CatalogImageDefinitionsClientBuildImageResponse], error)

BeginBuildImage - Builds an image for the specified Image Definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - CatalogImageDefinitionsClientBeginBuildImageOptions contains the optional parameters for the CatalogImageDefinitionsClient.BeginBuildImage method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_BuildImage.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogImageDefinitionsClient().BeginBuildImage(ctx, "rg1", "DevDevCenter", "CentralCatalog", "DefaultDevImage", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*CatalogImageDefinitionsClient) GetByDevCenterCatalog

func (client *CatalogImageDefinitionsClient) GetByDevCenterCatalog(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, options *CatalogImageDefinitionsClientGetByDevCenterCatalogOptions) (CatalogImageDefinitionsClientGetByDevCenterCatalogResponse, error)

GetByDevCenterCatalog - Gets an Image Definition from the catalog If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - CatalogImageDefinitionsClientGetByDevCenterCatalogOptions contains the optional parameters for the CatalogImageDefinitionsClient.GetByDevCenterCatalog method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_GetByDevCenterCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogImageDefinitionsClient().GetByDevCenterCatalog(ctx, "rg1", "ContosoDevCenter", "TeamCatalog", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogImageDefinitionsClientGetByDevCenterCatalogResponse{
	// 	ImageDefinition: armdevcenter.ImageDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/imagedefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/ContosoDevCenter/catalogs/TeamCatalog/imagedefinitions/WebDevBox"),
	// 		Properties: &armdevcenter.ImageDefinitionProperties{
	// 			ActiveImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			AutoImageBuild: to.Ptr(armdevcenter.AutoImageBuildStatusEnabled),
	// 			Extends: &armdevcenter.ImageDefinitionReference{
	// 				ImageDefinition: to.Ptr("it-base"),
	// 				Parameters: []*armdevcenter.DefinitionParametersItem{
	// 					{
	// 						Name: to.Ptr("vssku"),
	// 						Value: to.Ptr("Community"),
	// 					},
	// 				},
	// 			},
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			ImageValidationErrorDetails: &armdevcenter.ImageValidationErrorDetails{
	// 				Code: to.Ptr("400"),
	// 				Message: to.Ptr("Validation failed"),
	// 			},
	// 			ImageValidationStatus: to.Ptr(armdevcenter.ImageValidationStatusFailed),
	// 			LatestBuild: &armdevcenter.LatestImageBuild{
	// 				Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusRunning),
	// 			},
	// 			Tasks: []*armdevcenter.CustomizationTaskInstance{
	// 				{
	// 					Name: to.Ptr("git-clone"),
	// 					Parameters: []*armdevcenter.DefinitionParametersItem{
	// 						{
	// 							Name: to.Ptr("cloneUri"),
	// 							Value: to.Ptr("https://github.com/microsoft/devcenter-catalog"),
	// 						},
	// 					},
	// 				},
	// 			},
	// 			ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CatalogImageDefinitionsClient) GetErrorDetails

func (client *CatalogImageDefinitionsClient) GetErrorDetails(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, imageDefinitionName string, options *CatalogImageDefinitionsClientGetErrorDetailsOptions) (CatalogImageDefinitionsClientGetErrorDetailsResponse, error)

GetErrorDetails - Gets Image Definition error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - CatalogImageDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the CatalogImageDefinitionsClient.GetErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterImageDefinitions_GetErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogImageDefinitionsClient().GetErrorDetails(ctx, "rg1", "DevDevCenter", "TeamCatalog", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogImageDefinitionsClientGetErrorDetailsResponse{
	// 	CatalogResourceValidationErrorDetails: armdevcenter.CatalogResourceValidationErrorDetails{
	// 		Errors: []*armdevcenter.CatalogErrorDetails{
	// 			{
	// 				Code: to.Ptr("CatalogItemNotExist"),
	// 				Message: to.Ptr("Task choco doesn't exist in the dev center."),
	// 			},
	// 		},
	// 	},
	// }
}

func (*CatalogImageDefinitionsClient) NewListByDevCenterCatalogPager

NewListByDevCenterCatalogPager - List Image Definitions in the catalog.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogImageDefinitionsClientListByDevCenterCatalogOptions contains the optional parameters for the CatalogImageDefinitionsClient.NewListByDevCenterCatalogPager method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_ListByDevCenterCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCatalogImageDefinitionsClient().NewListByDevCenterCatalogPager("rg1", "ContosoDevCenter", "TeamCatalog", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.CatalogImageDefinitionsClientListByDevCenterCatalogResponse{
		// 	ImageDefinitionListResult: armdevcenter.ImageDefinitionListResult{
		// 		Value: []*armdevcenter.ImageDefinition{
		// 			{
		// 				Name: to.Ptr("WebDevBox"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/imagedefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/ContosoDevCenter/catalogs/TeamCatalog/imagedefinitions/WebDevBox"),
		// 				Properties: &armdevcenter.ImageDefinitionProperties{
		// 					ActiveImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					AutoImageBuild: to.Ptr(armdevcenter.AutoImageBuildStatusEnabled),
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					ImageValidationErrorDetails: &armdevcenter.ImageValidationErrorDetails{
		// 						Code: to.Ptr("400"),
		// 						Message: to.Ptr("Validation failed"),
		// 					},
		// 					ImageValidationStatus: to.Ptr(armdevcenter.ImageValidationStatusFailed),
		// 					LatestBuild: &armdevcenter.LatestImageBuild{
		// 						Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
		// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
		// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusRunning),
		// 					},
		// 					ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type CatalogImageDefinitionsClientBeginBuildImageOptions

type CatalogImageDefinitionsClientBeginBuildImageOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogImageDefinitionsClientBeginBuildImageOptions contains the optional parameters for the CatalogImageDefinitionsClient.BeginBuildImage method.

type CatalogImageDefinitionsClientBuildImageResponse

type CatalogImageDefinitionsClientBuildImageResponse struct {
}

CatalogImageDefinitionsClientBuildImageResponse contains the response from method CatalogImageDefinitionsClient.BeginBuildImage.

type CatalogImageDefinitionsClientGetByDevCenterCatalogOptions

type CatalogImageDefinitionsClientGetByDevCenterCatalogOptions struct {
}

CatalogImageDefinitionsClientGetByDevCenterCatalogOptions contains the optional parameters for the CatalogImageDefinitionsClient.GetByDevCenterCatalog method.

type CatalogImageDefinitionsClientGetByDevCenterCatalogResponse

type CatalogImageDefinitionsClientGetByDevCenterCatalogResponse struct {
	// Represents a definition for an Image.
	ImageDefinition
}

CatalogImageDefinitionsClientGetByDevCenterCatalogResponse contains the response from method CatalogImageDefinitionsClient.GetByDevCenterCatalog.

type CatalogImageDefinitionsClientGetErrorDetailsOptions

type CatalogImageDefinitionsClientGetErrorDetailsOptions struct {
}

CatalogImageDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the CatalogImageDefinitionsClient.GetErrorDetails method.

type CatalogImageDefinitionsClientGetErrorDetailsResponse

type CatalogImageDefinitionsClientGetErrorDetailsResponse struct {
	// List of validator error details. Populated when changes are made to the resource or its dependent resources that impact
	// the validity of the Catalog resource.
	CatalogResourceValidationErrorDetails
}

CatalogImageDefinitionsClientGetErrorDetailsResponse contains the response from method CatalogImageDefinitionsClient.GetErrorDetails.

type CatalogImageDefinitionsClientListByDevCenterCatalogOptions

type CatalogImageDefinitionsClientListByDevCenterCatalogOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

CatalogImageDefinitionsClientListByDevCenterCatalogOptions contains the optional parameters for the CatalogImageDefinitionsClient.NewListByDevCenterCatalogPager method.

type CatalogImageDefinitionsClientListByDevCenterCatalogResponse

type CatalogImageDefinitionsClientListByDevCenterCatalogResponse struct {
	// Paged collection of ImageDefinition items
	ImageDefinitionListResult
}

CatalogImageDefinitionsClientListByDevCenterCatalogResponse contains the response from method CatalogImageDefinitionsClient.NewListByDevCenterCatalogPager.

type CatalogItemSyncEnableStatus

type CatalogItemSyncEnableStatus string

CatalogItemSyncEnableStatus - Catalog item sync types enable or disable status. Indicates whether project catalogs are allowed to sync catalog items under projects associated to this dev center.

const (
	// CatalogItemSyncEnableStatusDisabled - Catalog item sync is disabled.
	CatalogItemSyncEnableStatusDisabled CatalogItemSyncEnableStatus = "Disabled"
	// CatalogItemSyncEnableStatusEnabled - Catalog item sync is enabled.
	CatalogItemSyncEnableStatusEnabled CatalogItemSyncEnableStatus = "Enabled"
)

func PossibleCatalogItemSyncEnableStatusValues

func PossibleCatalogItemSyncEnableStatusValues() []CatalogItemSyncEnableStatus

PossibleCatalogItemSyncEnableStatusValues returns the possible values for the CatalogItemSyncEnableStatus const type.

type CatalogItemType

type CatalogItemType string

CatalogItemType - Indicates catalog item types.

const (
	// CatalogItemTypeEnvironmentDefinition - Environment definition catalog item type.
	CatalogItemTypeEnvironmentDefinition CatalogItemType = "EnvironmentDefinition"
	// CatalogItemTypeImageDefinition - Image definition catalog item type.
	CatalogItemTypeImageDefinition CatalogItemType = "ImageDefinition"
)

func PossibleCatalogItemTypeValues

func PossibleCatalogItemTypeValues() []CatalogItemType

PossibleCatalogItemTypeValues returns the possible values for the CatalogItemType const type.

type CatalogListResult

type CatalogListResult struct {
	// READ-ONLY; The Catalog items on this page
	Value []*Catalog

	// The link to the next page of items
	NextLink *string
}

CatalogListResult - Paged collection of Catalog items

func (CatalogListResult) MarshalJSON

func (c CatalogListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogListResult.

func (*CatalogListResult) UnmarshalJSON

func (c *CatalogListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogListResult.

type CatalogProperties

type CatalogProperties struct {
	// Properties for an Azure DevOps catalog type.
	AdoGit *GitCatalog

	// Indicates whether the catalog is configured to automatically build image definitions. Defaults to disabled for newly created
	// catalogs.
	AutoImageBuildEnableStatus *CatalogAutoImageBuildEnableStatus

	// Properties for a GitHub catalog type.
	GitHub *GitCatalog

	// Indicates the type of sync that is configured for the catalog.
	SyncType *CatalogSyncType

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; The connection state of the catalog.
	ConnectionState *CatalogConnectionState

	// READ-ONLY; When the catalog was last connected.
	LastConnectionTime *time.Time

	// READ-ONLY; Stats of the latest synchronization.
	LastSyncStats *SyncStats

	// READ-ONLY; When the catalog was last synced.
	LastSyncTime *time.Time

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState

	// READ-ONLY; The synchronization state of the catalog.
	SyncState *CatalogSyncState
}

CatalogProperties - Properties of a catalog.

func (CatalogProperties) MarshalJSON

func (c CatalogProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogProperties.

func (*CatalogProperties) UnmarshalJSON

func (c *CatalogProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogProperties.

type CatalogResourceValidationErrorDetails

type CatalogResourceValidationErrorDetails struct {
	// READ-ONLY; Errors associated with resources synchronized from the catalog.
	Errors []*CatalogErrorDetails
}

CatalogResourceValidationErrorDetails - List of validator error details. Populated when changes are made to the resource or its dependent resources that impact the validity of the Catalog resource.

func (CatalogResourceValidationErrorDetails) MarshalJSON

func (c CatalogResourceValidationErrorDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogResourceValidationErrorDetails.

func (*CatalogResourceValidationErrorDetails) UnmarshalJSON

func (c *CatalogResourceValidationErrorDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogResourceValidationErrorDetails.

type CatalogResourceValidationStatus

type CatalogResourceValidationStatus string

CatalogResourceValidationStatus - Catalog resource validation status.

const (
	// CatalogResourceValidationStatusFailed - Failed validation status.
	CatalogResourceValidationStatusFailed CatalogResourceValidationStatus = "Failed"
	// CatalogResourceValidationStatusPending - Pending validation status.
	CatalogResourceValidationStatusPending CatalogResourceValidationStatus = "Pending"
	// CatalogResourceValidationStatusSucceeded - Succeeded validation status.
	CatalogResourceValidationStatusSucceeded CatalogResourceValidationStatus = "Succeeded"
	// CatalogResourceValidationStatusUnknown - Unknown validation status.
	CatalogResourceValidationStatusUnknown CatalogResourceValidationStatus = "Unknown"
)

func PossibleCatalogResourceValidationStatusValues

func PossibleCatalogResourceValidationStatusValues() []CatalogResourceValidationStatus

PossibleCatalogResourceValidationStatusValues returns the possible values for the CatalogResourceValidationStatus const type.

type CatalogSyncError

type CatalogSyncError struct {
	// READ-ONLY; Errors associated with the file.
	ErrorDetails []*CatalogErrorDetails

	// READ-ONLY; The path of the file the error is associated with.
	Path *string
}

CatalogSyncError - An individual synchronization error.

func (CatalogSyncError) MarshalJSON

func (c CatalogSyncError) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogSyncError.

func (*CatalogSyncError) UnmarshalJSON

func (c *CatalogSyncError) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogSyncError.

type CatalogSyncState

type CatalogSyncState string

CatalogSyncState - The synchronization state of the catalog.

const (
	// CatalogSyncStateCanceled - Canceled synchronization state.
	CatalogSyncStateCanceled CatalogSyncState = "Canceled"
	// CatalogSyncStateFailed - Failed synchronization state.
	CatalogSyncStateFailed CatalogSyncState = "Failed"
	// CatalogSyncStateInProgress - In progress synchronization state.
	CatalogSyncStateInProgress CatalogSyncState = "InProgress"
	// CatalogSyncStateSucceeded - Succeeded synchronization state.
	CatalogSyncStateSucceeded CatalogSyncState = "Succeeded"
)

func PossibleCatalogSyncStateValues

func PossibleCatalogSyncStateValues() []CatalogSyncState

PossibleCatalogSyncStateValues returns the possible values for the CatalogSyncState const type.

type CatalogSyncType

type CatalogSyncType string

CatalogSyncType - Indicates the type of sync that is configured for the catalog.

const (
	// CatalogSyncTypeManual - Manual sync type.
	CatalogSyncTypeManual CatalogSyncType = "Manual"
	// CatalogSyncTypeScheduled - Scheduled sync type.
	CatalogSyncTypeScheduled CatalogSyncType = "Scheduled"
)

func PossibleCatalogSyncTypeValues

func PossibleCatalogSyncTypeValues() []CatalogSyncType

PossibleCatalogSyncTypeValues returns the possible values for the CatalogSyncType const type.

type CatalogUpdate

type CatalogUpdate struct {
	// Catalog properties for update.
	Properties *CatalogUpdateProperties
}

CatalogUpdate - The catalog's properties for partial update. Properties not provided in the update request will not be changed.

func (CatalogUpdate) MarshalJSON

func (c CatalogUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogUpdate.

func (*CatalogUpdate) UnmarshalJSON

func (c *CatalogUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogUpdate.

type CatalogUpdateProperties

type CatalogUpdateProperties struct {
	// Properties for an Azure DevOps catalog type.
	AdoGit *GitCatalog

	// Indicates whether the catalog is configured to automatically build image definitions. Defaults to disabled for newly created
	// catalogs.
	AutoImageBuildEnableStatus *CatalogAutoImageBuildEnableStatus

	// Properties for a GitHub catalog type.
	GitHub *GitCatalog

	// Indicates the type of sync that is configured for the catalog.
	SyncType *CatalogSyncType

	// Resource tags.
	Tags map[string]*string
}

CatalogUpdateProperties - Properties of a catalog. These properties can be updated after the resource has been created.

func (CatalogUpdateProperties) MarshalJSON

func (c CatalogUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CatalogUpdateProperties.

func (*CatalogUpdateProperties) UnmarshalJSON

func (c *CatalogUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CatalogUpdateProperties.

type CatalogsClient

type CatalogsClient struct {
	// contains filtered or unexported fields
}

CatalogsClient contains the methods for the Catalogs group. Don't use this type directly, use NewCatalogsClient() instead.

Generated from API version 2026-01-01-preview

func NewCatalogsClient

func NewCatalogsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CatalogsClient, error)

NewCatalogsClient creates a new instance of CatalogsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CatalogsClient) BeginConnect

func (client *CatalogsClient) BeginConnect(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, options *CatalogsClientBeginConnectOptions) (*runtime.Poller[CatalogsClientConnectResponse], error)

BeginConnect - Connects a catalog to enable syncing. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogsClientBeginConnectOptions contains the optional parameters for the CatalogsClient.BeginConnect method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_Connect.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginConnect(ctx, "rg1", "Contoso", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*CatalogsClient) BeginCreateOrUpdate

func (client *CatalogsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, body Catalog, options *CatalogsClientBeginCreateOrUpdateOptions) (*runtime.Poller[CatalogsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • body - Represents a catalog.
  • options - CatalogsClientBeginCreateOrUpdateOptions contains the optional parameters for the CatalogsClient.BeginCreateOrUpdate method.
Example (CatalogsCreateOrUpdateAdo)

Generated from example definition: 2026-01-01-preview/Catalogs_CreateAdo.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "CentralCatalog", armdevcenter.Catalog{
		Properties: &armdevcenter.CatalogProperties{
			AdoGit: &armdevcenter.GitCatalog{
				Path:             to.Ptr("/templates"),
				Branch:           to.Ptr("main"),
				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
				URI:              to.Ptr("https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso"),
			},
			SyncType:                   to.Ptr(armdevcenter.CatalogSyncTypeScheduled),
			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogsClientCreateOrUpdateResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			AdoGit: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso"),
	// 			},
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](0),
	// 				Removed: to.Ptr[int32](0),
	// 				SynchronizationErrors: to.Ptr[int32](0),
	// 				Unchanged: to.Ptr[int32](0),
	// 				Updated: to.Ptr[int32](0),
	// 				ValidationErrors: to.Ptr[int32](0),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 			SyncType: to.Ptr(armdevcenter.CatalogSyncTypeScheduled),
	// 			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}
Example (CatalogsCreateOrUpdateGitHub)

Generated from example definition: 2026-01-01-preview/Catalogs_CreateGitHub.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "CentralCatalog", armdevcenter.Catalog{
		Properties: &armdevcenter.CatalogProperties{
			GitHub: &armdevcenter.GitCatalog{
				Path:             to.Ptr("/templates"),
				Branch:           to.Ptr("main"),
				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
				URI:              to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
			},
			SyncType:                   to.Ptr(armdevcenter.CatalogSyncTypeManual),
			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogsClientCreateOrUpdateResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](0),
	// 				Removed: to.Ptr[int32](0),
	// 				SynchronizationErrors: to.Ptr[int32](0),
	// 				Unchanged: to.Ptr[int32](0),
	// 				Updated: to.Ptr[int32](0),
	// 				ValidationErrors: to.Ptr[int32](0),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 			SyncType: to.Ptr(armdevcenter.CatalogSyncTypeManual),
	// 			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CatalogsClient) BeginDelete

func (client *CatalogsClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, options *CatalogsClientBeginDeleteOptions) (*runtime.Poller[CatalogsClientDeleteResponse], error)

BeginDelete - Deletes a catalog resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogsClientBeginDeleteOptions contains the optional parameters for the CatalogsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginDelete(ctx, "rg1", "Contoso", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*CatalogsClient) BeginSync

func (client *CatalogsClient) BeginSync(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, options *CatalogsClientBeginSyncOptions) (*runtime.Poller[CatalogsClientSyncResponse], error)

BeginSync - Syncs templates for a template source. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogsClientBeginSyncOptions contains the optional parameters for the CatalogsClient.BeginSync method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_Sync.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginSync(ctx, "rg1", "Contoso", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*CatalogsClient) BeginUpdate

func (client *CatalogsClient) BeginUpdate(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, body CatalogUpdate, options *CatalogsClientBeginUpdateOptions) (*runtime.Poller[CatalogsClientUpdateResponse], error)

BeginUpdate - Partially updates a catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • body - Updatable catalog properties.
  • options - CatalogsClientBeginUpdateOptions contains the optional parameters for the CatalogsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewCatalogsClient().BeginUpdate(ctx, "rg1", "Contoso", "CentralCatalog", armdevcenter.CatalogUpdate{
		Properties: &armdevcenter.CatalogUpdateProperties{
			GitHub: &armdevcenter.GitCatalog{
				Path: to.Ptr("/environments"),
			},
			SyncType:                   to.Ptr(armdevcenter.CatalogSyncTypeScheduled),
			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogsClientUpdateResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/environments"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](1),
	// 				Removed: to.Ptr[int32](1),
	// 				SynchronizationErrors: to.Ptr[int32](1),
	// 				Unchanged: to.Ptr[int32](1),
	// 				Updated: to.Ptr[int32](1),
	// 				ValidationErrors: to.Ptr[int32](1),
	// 			},
	// 			LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 			SyncType: to.Ptr(armdevcenter.CatalogSyncTypeScheduled),
	// 			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CatalogsClient) Get

func (client *CatalogsClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, options *CatalogsClientGetOptions) (CatalogsClientGetResponse, error)

Get - Gets a catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogsClientGetOptions contains the optional parameters for the CatalogsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogsClient().Get(ctx, "rg1", "Contoso", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogsClientGetResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](1),
	// 				Removed: to.Ptr[int32](1),
	// 				SynchronizationErrors: to.Ptr[int32](1),
	// 				Unchanged: to.Ptr[int32](1),
	// 				Updated: to.Ptr[int32](1),
	// 				ValidationErrors: to.Ptr[int32](1),
	// 			},
	// 			LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 			SyncType: to.Ptr(armdevcenter.CatalogSyncTypeScheduled),
	// 			AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CatalogsClient) GetSyncErrorDetails

func (client *CatalogsClient) GetSyncErrorDetails(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, options *CatalogsClientGetSyncErrorDetailsOptions) (CatalogsClientGetSyncErrorDetailsResponse, error)

GetSyncErrorDetails - Gets catalog synchronization error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CatalogsClientGetSyncErrorDetailsOptions contains the optional parameters for the CatalogsClient.GetSyncErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_GetSyncErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCatalogsClient().GetSyncErrorDetails(ctx, "rg1", "Contoso", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CatalogsClientGetSyncErrorDetailsResponse{
	// 	SyncErrorDetails: armdevcenter.SyncErrorDetails{
	// 		Conflicts: []*armdevcenter.CatalogConflictError{
	// 			{
	// 				Name: to.Ptr("DuplicateEnvironmentName"),
	// 				Path: to.Ptr("/Environments/Duplicate/manifest.yaml"),
	// 			},
	// 		},
	// 		Errors: []*armdevcenter.CatalogSyncError{
	// 			{
	// 				Path: to.Ptr("/Environments/Invalid/manifest.yaml"),
	// 				ErrorDetails: []*armdevcenter.CatalogErrorDetails{
	// 					{
	// 						Code: to.Ptr("ParseError"),
	// 						Message: to.Ptr("Schema Error Within Catalog Item: Missing Name"),
	// 					},
	// 				},
	// 			},
	// 		},
	// 		OperationError: &armdevcenter.CatalogErrorDetails{
	// 			Code: to.Ptr("Conflict"),
	// 			Message: to.Ptr("The source control credentials could not be validated successfully."),
	// 		},
	// 	},
	// }
}

func (*CatalogsClient) NewListByDevCenterPager

func (client *CatalogsClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *CatalogsClientListByDevCenterOptions) *runtime.Pager[CatalogsClientListByDevCenterResponse]

NewListByDevCenterPager - Lists catalogs for a devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - CatalogsClientListByDevCenterOptions contains the optional parameters for the CatalogsClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/Catalogs_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCatalogsClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.CatalogsClientListByDevCenterResponse{
		// 	CatalogListResult: armdevcenter.CatalogListResult{
		// 		Value: []*armdevcenter.Catalog{
		// 			{
		// 				Name: to.Ptr("CentralCatalog"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog"),
		// 				Properties: &armdevcenter.CatalogProperties{
		// 					ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
		// 					GitHub: &armdevcenter.GitCatalog{
		// 						Path: to.Ptr("/templates"),
		// 						Branch: to.Ptr("main"),
		// 						SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
		// 						URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
		// 					},
		// 					LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
		// 					LastSyncStats: &armdevcenter.SyncStats{
		// 						Added: to.Ptr[int32](1),
		// 						Removed: to.Ptr[int32](1),
		// 						SynchronizationErrors: to.Ptr[int32](1),
		// 						Unchanged: to.Ptr[int32](1),
		// 						Updated: to.Ptr[int32](1),
		// 						ValidationErrors: to.Ptr[int32](1),
		// 					},
		// 					LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
		// 					AutoImageBuildEnableStatus: to.Ptr(armdevcenter.CatalogAutoImageBuildEnableStatusEnabled),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type CatalogsClientBeginConnectOptions

type CatalogsClientBeginConnectOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogsClientBeginConnectOptions contains the optional parameters for the CatalogsClient.BeginConnect method.

type CatalogsClientBeginCreateOrUpdateOptions

type CatalogsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogsClientBeginCreateOrUpdateOptions contains the optional parameters for the CatalogsClient.BeginCreateOrUpdate method.

type CatalogsClientBeginDeleteOptions

type CatalogsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogsClientBeginDeleteOptions contains the optional parameters for the CatalogsClient.BeginDelete method.

type CatalogsClientBeginSyncOptions

type CatalogsClientBeginSyncOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogsClientBeginSyncOptions contains the optional parameters for the CatalogsClient.BeginSync method.

type CatalogsClientBeginUpdateOptions

type CatalogsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

CatalogsClientBeginUpdateOptions contains the optional parameters for the CatalogsClient.BeginUpdate method.

type CatalogsClientConnectResponse

type CatalogsClientConnectResponse struct {
}

CatalogsClientConnectResponse contains the response from method CatalogsClient.BeginConnect.

type CatalogsClientCreateOrUpdateResponse

type CatalogsClientCreateOrUpdateResponse struct {
	// Represents a catalog.
	Catalog
}

CatalogsClientCreateOrUpdateResponse contains the response from method CatalogsClient.BeginCreateOrUpdate.

type CatalogsClientDeleteResponse

type CatalogsClientDeleteResponse struct {
}

CatalogsClientDeleteResponse contains the response from method CatalogsClient.BeginDelete.

type CatalogsClientGetOptions

type CatalogsClientGetOptions struct {
}

CatalogsClientGetOptions contains the optional parameters for the CatalogsClient.Get method.

type CatalogsClientGetResponse

type CatalogsClientGetResponse struct {
	// Represents a catalog.
	Catalog
}

CatalogsClientGetResponse contains the response from method CatalogsClient.Get.

type CatalogsClientGetSyncErrorDetailsOptions

type CatalogsClientGetSyncErrorDetailsOptions struct {
}

CatalogsClientGetSyncErrorDetailsOptions contains the optional parameters for the CatalogsClient.GetSyncErrorDetails method.

type CatalogsClientGetSyncErrorDetailsResponse

type CatalogsClientGetSyncErrorDetailsResponse struct {
	// Synchronization error details.
	SyncErrorDetails
}

CatalogsClientGetSyncErrorDetailsResponse contains the response from method CatalogsClient.GetSyncErrorDetails.

type CatalogsClientListByDevCenterOptions

type CatalogsClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

CatalogsClientListByDevCenterOptions contains the optional parameters for the CatalogsClient.NewListByDevCenterPager method.

type CatalogsClientListByDevCenterResponse

type CatalogsClientListByDevCenterResponse struct {
	// Paged collection of Catalog items
	CatalogListResult
}

CatalogsClientListByDevCenterResponse contains the response from method CatalogsClient.NewListByDevCenterPager.

type CatalogsClientSyncResponse

type CatalogsClientSyncResponse struct {
}

CatalogsClientSyncResponse contains the response from method CatalogsClient.BeginSync.

type CatalogsClientUpdateResponse

type CatalogsClientUpdateResponse struct {
	// Represents a catalog.
	Catalog
}

CatalogsClientUpdateResponse contains the response from method CatalogsClient.BeginUpdate.

type CheckNameAvailabilityClient

type CheckNameAvailabilityClient struct {
	// contains filtered or unexported fields
}

CheckNameAvailabilityClient contains the methods for the CheckNameAvailability group. Don't use this type directly, use NewCheckNameAvailabilityClient() instead.

Generated from API version 2026-01-01-preview

func NewCheckNameAvailabilityClient

func NewCheckNameAvailabilityClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CheckNameAvailabilityClient, error)

NewCheckNameAvailabilityClient creates a new instance of CheckNameAvailabilityClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CheckNameAvailabilityClient) Execute

Execute - Check the availability of name for resource. If the operation fails it returns an *azcore.ResponseError type.

  • nameAvailabilityRequest - The request body
  • options - CheckNameAvailabilityClientExecuteOptions contains the optional parameters for the CheckNameAvailabilityClient.Execute method.
Example

Generated from example definition: 2026-01-01-preview/CheckNameAvailability.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCheckNameAvailabilityClient().Execute(ctx, armdevcenter.CheckNameAvailabilityRequest{
		Name: to.Ptr("name1"),
		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CheckNameAvailabilityClientExecuteResponse{
	// 	CheckNameAvailabilityResponse: armdevcenter.CheckNameAvailabilityResponse{
	// 		NameAvailable: to.Ptr(true),
	// 	},
	// }
}

type CheckNameAvailabilityClientExecuteOptions

type CheckNameAvailabilityClientExecuteOptions struct {
}

CheckNameAvailabilityClientExecuteOptions contains the optional parameters for the CheckNameAvailabilityClient.Execute method.

type CheckNameAvailabilityClientExecuteResponse

type CheckNameAvailabilityClientExecuteResponse struct {
	// The check availability result.
	CheckNameAvailabilityResponse
}

CheckNameAvailabilityClientExecuteResponse contains the response from method CheckNameAvailabilityClient.Execute.

type CheckNameAvailabilityReason

type CheckNameAvailabilityReason string

CheckNameAvailabilityReason - Possible reasons for a name not being available.

const (
	// CheckNameAvailabilityReasonAlreadyExists - Name already exists.
	CheckNameAvailabilityReasonAlreadyExists CheckNameAvailabilityReason = "AlreadyExists"
	// CheckNameAvailabilityReasonInvalid - Name is invalid.
	CheckNameAvailabilityReasonInvalid CheckNameAvailabilityReason = "Invalid"
)

func PossibleCheckNameAvailabilityReasonValues

func PossibleCheckNameAvailabilityReasonValues() []CheckNameAvailabilityReason

PossibleCheckNameAvailabilityReasonValues returns the possible values for the CheckNameAvailabilityReason const type.

type CheckNameAvailabilityRequest

type CheckNameAvailabilityRequest struct {
	// The name of the resource for which availability needs to be checked.
	Name *string

	// The resource type.
	Type *string
}

CheckNameAvailabilityRequest - The check availability request body.

func (CheckNameAvailabilityRequest) MarshalJSON

func (c CheckNameAvailabilityRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CheckNameAvailabilityRequest.

func (*CheckNameAvailabilityRequest) UnmarshalJSON

func (c *CheckNameAvailabilityRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CheckNameAvailabilityRequest.

type CheckNameAvailabilityResponse

type CheckNameAvailabilityResponse struct {
	// Detailed reason why the given name is not available.
	Message *string

	// Indicates if the resource name is available.
	NameAvailable *bool

	// The reason why the given name is not available.
	Reason *CheckNameAvailabilityReason
}

CheckNameAvailabilityResponse - The check availability result.

func (CheckNameAvailabilityResponse) MarshalJSON

func (c CheckNameAvailabilityResponse) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CheckNameAvailabilityResponse.

func (*CheckNameAvailabilityResponse) UnmarshalJSON

func (c *CheckNameAvailabilityResponse) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CheckNameAvailabilityResponse.

type CheckScopedNameAvailabilityClient

type CheckScopedNameAvailabilityClient struct {
	// contains filtered or unexported fields
}

CheckScopedNameAvailabilityClient contains the methods for the CheckScopedNameAvailability group. Don't use this type directly, use NewCheckScopedNameAvailabilityClient() instead.

Generated from API version 2026-01-01-preview

func NewCheckScopedNameAvailabilityClient

func NewCheckScopedNameAvailabilityClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CheckScopedNameAvailabilityClient, error)

NewCheckScopedNameAvailabilityClient creates a new instance of CheckScopedNameAvailabilityClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CheckScopedNameAvailabilityClient) Execute

Execute - Check the availability of name for resource. If the operation fails it returns an *azcore.ResponseError type.

  • nameAvailabilityRequest - The request body
  • options - CheckScopedNameAvailabilityClientExecuteOptions contains the optional parameters for the CheckScopedNameAvailabilityClient.Execute method.
Example (DevcenterCatalogNameAvailability)

Generated from example definition: 2026-01-01-preview/CheckScopedNameAvailability_DevCenterCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCheckScopedNameAvailabilityClient().Execute(ctx, armdevcenter.CheckScopedNameAvailabilityRequest{
		Name:  to.Ptr("name1"),
		Type:  to.Ptr("Microsoft.DevCenter/devcenters/catalogs"),
		Scope: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CheckScopedNameAvailabilityClientExecuteResponse{
	// 	CheckNameAvailabilityResponse: armdevcenter.CheckNameAvailabilityResponse{
	// 		NameAvailable: to.Ptr(true),
	// 	},
	// }
}
Example (ProjectCatalogNameAvailability)

Generated from example definition: 2026-01-01-preview/CheckScopedNameAvailability_ProjectCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCheckScopedNameAvailabilityClient().Execute(ctx, armdevcenter.CheckScopedNameAvailabilityRequest{
		Name:  to.Ptr("name1"),
		Type:  to.Ptr("Microsoft.DevCenter/projects/catalogs"),
		Scope: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CheckScopedNameAvailabilityClientExecuteResponse{
	// 	CheckNameAvailabilityResponse: armdevcenter.CheckNameAvailabilityResponse{
	// 		NameAvailable: to.Ptr(true),
	// 	},
	// }
}

type CheckScopedNameAvailabilityClientExecuteOptions

type CheckScopedNameAvailabilityClientExecuteOptions struct {
}

CheckScopedNameAvailabilityClientExecuteOptions contains the optional parameters for the CheckScopedNameAvailabilityClient.Execute method.

type CheckScopedNameAvailabilityClientExecuteResponse

type CheckScopedNameAvailabilityClientExecuteResponse struct {
	// The check availability result.
	CheckNameAvailabilityResponse
}

CheckScopedNameAvailabilityClientExecuteResponse contains the response from method CheckScopedNameAvailabilityClient.Execute.

type CheckScopedNameAvailabilityRequest

type CheckScopedNameAvailabilityRequest struct {
	// The name of the resource for which availability needs to be checked.
	Name *string

	// The resource id to scope the name check.
	Scope *string

	// The resource type.
	Type *string
}

CheckScopedNameAvailabilityRequest - The scoped name check availability request body.

func (CheckScopedNameAvailabilityRequest) MarshalJSON

func (c CheckScopedNameAvailabilityRequest) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CheckScopedNameAvailabilityRequest.

func (*CheckScopedNameAvailabilityRequest) UnmarshalJSON

func (c *CheckScopedNameAvailabilityRequest) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CheckScopedNameAvailabilityRequest.

type ClientFactory

type ClientFactory struct {
	// contains filtered or unexported fields
}

ClientFactory is a client factory used to create any client in this module. Don't use this type directly, use NewClientFactory instead.

func NewClientFactory

func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error)

NewClientFactory creates a new instance of ClientFactory with the specified values. The parameter values will be propagated to any client created from this factory.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - pass nil to accept the default values.

func (*ClientFactory) NewAttachedNetworksClient

func (c *ClientFactory) NewAttachedNetworksClient() *AttachedNetworksClient

NewAttachedNetworksClient creates a new instance of AttachedNetworksClient.

func (*ClientFactory) NewCatalogImageDefinitionBuildClient

func (c *ClientFactory) NewCatalogImageDefinitionBuildClient() *CatalogImageDefinitionBuildClient

NewCatalogImageDefinitionBuildClient creates a new instance of CatalogImageDefinitionBuildClient.

func (*ClientFactory) NewCatalogImageDefinitionBuildsClient

func (c *ClientFactory) NewCatalogImageDefinitionBuildsClient() *CatalogImageDefinitionBuildsClient

NewCatalogImageDefinitionBuildsClient creates a new instance of CatalogImageDefinitionBuildsClient.

func (*ClientFactory) NewCatalogImageDefinitionsClient

func (c *ClientFactory) NewCatalogImageDefinitionsClient() *CatalogImageDefinitionsClient

NewCatalogImageDefinitionsClient creates a new instance of CatalogImageDefinitionsClient.

func (*ClientFactory) NewCatalogsClient

func (c *ClientFactory) NewCatalogsClient() *CatalogsClient

NewCatalogsClient creates a new instance of CatalogsClient.

func (*ClientFactory) NewCheckNameAvailabilityClient

func (c *ClientFactory) NewCheckNameAvailabilityClient() *CheckNameAvailabilityClient

NewCheckNameAvailabilityClient creates a new instance of CheckNameAvailabilityClient.

func (*ClientFactory) NewCheckScopedNameAvailabilityClient

func (c *ClientFactory) NewCheckScopedNameAvailabilityClient() *CheckScopedNameAvailabilityClient

NewCheckScopedNameAvailabilityClient creates a new instance of CheckScopedNameAvailabilityClient.

func (*ClientFactory) NewCustomizationTasksClient

func (c *ClientFactory) NewCustomizationTasksClient() *CustomizationTasksClient

NewCustomizationTasksClient creates a new instance of CustomizationTasksClient.

func (*ClientFactory) NewDevBoxDefinitionsClient

func (c *ClientFactory) NewDevBoxDefinitionsClient() *DevBoxDefinitionsClient

NewDevBoxDefinitionsClient creates a new instance of DevBoxDefinitionsClient.

func (*ClientFactory) NewDevCentersClient

func (c *ClientFactory) NewDevCentersClient() *DevCentersClient

NewDevCentersClient creates a new instance of DevCentersClient.

func (*ClientFactory) NewEncryptionSetsClient

func (c *ClientFactory) NewEncryptionSetsClient() *EncryptionSetsClient

NewEncryptionSetsClient creates a new instance of EncryptionSetsClient.

func (*ClientFactory) NewEnvironmentDefinitionsClient

func (c *ClientFactory) NewEnvironmentDefinitionsClient() *EnvironmentDefinitionsClient

NewEnvironmentDefinitionsClient creates a new instance of EnvironmentDefinitionsClient.

func (*ClientFactory) NewEnvironmentTypesClient

func (c *ClientFactory) NewEnvironmentTypesClient() *EnvironmentTypesClient

NewEnvironmentTypesClient creates a new instance of EnvironmentTypesClient.

func (*ClientFactory) NewGalleriesClient

func (c *ClientFactory) NewGalleriesClient() *GalleriesClient

NewGalleriesClient creates a new instance of GalleriesClient.

func (*ClientFactory) NewImageVersionsClient

func (c *ClientFactory) NewImageVersionsClient() *ImageVersionsClient

NewImageVersionsClient creates a new instance of ImageVersionsClient.

func (*ClientFactory) NewImagesClient

func (c *ClientFactory) NewImagesClient() *ImagesClient

NewImagesClient creates a new instance of ImagesClient.

func (*ClientFactory) NewNetworkConnectionsClient

func (c *ClientFactory) NewNetworkConnectionsClient() *NetworkConnectionsClient

NewNetworkConnectionsClient creates a new instance of NetworkConnectionsClient.

func (*ClientFactory) NewOperationStatusesClient

func (c *ClientFactory) NewOperationStatusesClient() *OperationStatusesClient

NewOperationStatusesClient creates a new instance of OperationStatusesClient.

func (*ClientFactory) NewOperationsClient

func (c *ClientFactory) NewOperationsClient() *OperationsClient

NewOperationsClient creates a new instance of OperationsClient.

func (*ClientFactory) NewPoolsClient

func (c *ClientFactory) NewPoolsClient() *PoolsClient

NewPoolsClient creates a new instance of PoolsClient.

func (*ClientFactory) NewProjectAllowedEnvironmentTypesClient

func (c *ClientFactory) NewProjectAllowedEnvironmentTypesClient() *ProjectAllowedEnvironmentTypesClient

NewProjectAllowedEnvironmentTypesClient creates a new instance of ProjectAllowedEnvironmentTypesClient.

func (*ClientFactory) NewProjectCatalogEnvironmentDefinitionsClient

func (c *ClientFactory) NewProjectCatalogEnvironmentDefinitionsClient() *ProjectCatalogEnvironmentDefinitionsClient

NewProjectCatalogEnvironmentDefinitionsClient creates a new instance of ProjectCatalogEnvironmentDefinitionsClient.

func (*ClientFactory) NewProjectCatalogImageDefinitionBuildClient

func (c *ClientFactory) NewProjectCatalogImageDefinitionBuildClient() *ProjectCatalogImageDefinitionBuildClient

NewProjectCatalogImageDefinitionBuildClient creates a new instance of ProjectCatalogImageDefinitionBuildClient.

func (*ClientFactory) NewProjectCatalogImageDefinitionBuildsClient

func (c *ClientFactory) NewProjectCatalogImageDefinitionBuildsClient() *ProjectCatalogImageDefinitionBuildsClient

NewProjectCatalogImageDefinitionBuildsClient creates a new instance of ProjectCatalogImageDefinitionBuildsClient.

func (*ClientFactory) NewProjectCatalogImageDefinitionsClient

func (c *ClientFactory) NewProjectCatalogImageDefinitionsClient() *ProjectCatalogImageDefinitionsClient

NewProjectCatalogImageDefinitionsClient creates a new instance of ProjectCatalogImageDefinitionsClient.

func (*ClientFactory) NewProjectCatalogsClient

func (c *ClientFactory) NewProjectCatalogsClient() *ProjectCatalogsClient

NewProjectCatalogsClient creates a new instance of ProjectCatalogsClient.

func (*ClientFactory) NewProjectEnvironmentTypesClient

func (c *ClientFactory) NewProjectEnvironmentTypesClient() *ProjectEnvironmentTypesClient

NewProjectEnvironmentTypesClient creates a new instance of ProjectEnvironmentTypesClient.

func (*ClientFactory) NewProjectPoliciesClient

func (c *ClientFactory) NewProjectPoliciesClient() *ProjectPoliciesClient

NewProjectPoliciesClient creates a new instance of ProjectPoliciesClient.

func (*ClientFactory) NewProjectsClient

func (c *ClientFactory) NewProjectsClient() *ProjectsClient

NewProjectsClient creates a new instance of ProjectsClient.

func (*ClientFactory) NewSKUsClient

func (c *ClientFactory) NewSKUsClient() *SKUsClient

NewSKUsClient creates a new instance of SKUsClient.

func (*ClientFactory) NewSchedulesClient

func (c *ClientFactory) NewSchedulesClient() *SchedulesClient

NewSchedulesClient creates a new instance of SchedulesClient.

func (*ClientFactory) NewUsagesClient

func (c *ClientFactory) NewUsagesClient() *UsagesClient

NewUsagesClient creates a new instance of UsagesClient.

type CmkIdentityType

type CmkIdentityType string

CmkIdentityType - The type of identity used to access the key vault key.

const (
	// CmkIdentityTypeSystemAssigned - System assigned identity type.
	CmkIdentityTypeSystemAssigned CmkIdentityType = "SystemAssigned"
	// CmkIdentityTypeUserAssigned - User assigned identity type.
	CmkIdentityTypeUserAssigned CmkIdentityType = "UserAssigned"
)

func PossibleCmkIdentityTypeValues

func PossibleCmkIdentityTypeValues() []CmkIdentityType

PossibleCmkIdentityTypeValues returns the possible values for the CmkIdentityType const type.

type ConfigurationPolicies

type ConfigurationPolicies struct {
	// The property indicates the Azure AI services settings on a project.
	AzureAiServicesFeatureStatus *FeatureState

	// Indicates whether DevBox limits are configurable at Project scope.
	DevBoxLimitsFeatureStatus *FeatureState

	// Indicates whether the setting is configurable at Project scope.
	DevBoxScheduleDeleteFeatureStatus *FeatureState

	// Indicates whether DevBox tunnel settings are configurable at Pool scope.
	DevBoxTunnelFeatureStatus *FeatureState

	// Indicates whether project display name is configurable at Project scope.
	DisplayNameFeatureStatus *FeatureState

	// Indicates whether project catalogs are configurable at Project scope.
	ProjectCatalogFeatureStatus *FeatureState

	// Indicates whether serverless GPU sessions are configurable at Project scope.
	ServerlessGpuSessionsFeatureStatus *FeatureState

	// Indicates whether user customizations is configurable at Project scope.
	UserCustomizationsFeatureStatus *FeatureState

	// Indicates whether workspace storage is configurable at Project scope.
	WorkspaceStorageFeatureStatus *FeatureState
}

ConfigurationPolicies - Represents policies to enforce configuration settings on a project.

func (ConfigurationPolicies) MarshalJSON

func (c ConfigurationPolicies) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ConfigurationPolicies.

func (*ConfigurationPolicies) UnmarshalJSON

func (c *ConfigurationPolicies) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ConfigurationPolicies.

type CreatedByType

type CreatedByType string

CreatedByType - The kind of entity that created the resource.

const (
	// CreatedByTypeApplication - The entity was created by an application.
	CreatedByTypeApplication CreatedByType = "Application"
	// CreatedByTypeKey - The entity was created by a key.
	CreatedByTypeKey CreatedByType = "Key"
	// CreatedByTypeManagedIdentity - The entity was created by a managed identity.
	CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity"
	// CreatedByTypeUser - The entity was created by a user.
	CreatedByTypeUser CreatedByType = "User"
)

func PossibleCreatedByTypeValues

func PossibleCreatedByTypeValues() []CreatedByType

PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.

type CustomerManagedKeyEncryption

type CustomerManagedKeyEncryption struct {
	// All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault.
	KeyEncryptionKeyIdentity *CustomerManagedKeyEncryptionKeyIdentity

	// key encryption key Url, versioned or non-versioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78
	// or https://contosovault.vault.azure.net/keys/contosokek.
	KeyEncryptionKeyURL *string
}

CustomerManagedKeyEncryption - Customer-managed key encryption properties for the resource.

func (CustomerManagedKeyEncryption) MarshalJSON

func (c CustomerManagedKeyEncryption) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomerManagedKeyEncryption.

func (*CustomerManagedKeyEncryption) UnmarshalJSON

func (c *CustomerManagedKeyEncryption) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomerManagedKeyEncryption.

type CustomerManagedKeyEncryptionKeyIdentity

type CustomerManagedKeyEncryptionKeyIdentity struct {
	// delegated identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource
	// group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId. Mutually exclusive with identityType systemAssignedIdentity
	// and userAssignedIdentity - internal use only.
	DelegatedIdentityClientID *string

	// application client identity to use for accessing key encryption key Url in a different tenant. Ex: f83c6b1b-4d34-47e4-bb34-9d83df58b540
	FederatedClientID *string

	// The type of identity to use. Values can be systemAssignedIdentity, userAssignedIdentity, or delegatedResourceIdentity.
	IdentityType *KeyEncryptionKeyIdentityType

	// User assigned identity to use for accessing key encryption key Url. Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource
	// group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId. Mutually exclusive with identityType systemAssignedIdentity.
	UserAssignedIdentityResourceID *string
}

CustomerManagedKeyEncryptionKeyIdentity - All identity configuration for Customer-managed key settings defining which identity should be used to auth to Key Vault.

func (CustomerManagedKeyEncryptionKeyIdentity) MarshalJSON

func (c CustomerManagedKeyEncryptionKeyIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomerManagedKeyEncryptionKeyIdentity.

func (*CustomerManagedKeyEncryptionKeyIdentity) UnmarshalJSON

func (c *CustomerManagedKeyEncryptionKeyIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomerManagedKeyEncryptionKeyIdentity.

type CustomizationTask

type CustomizationTask struct {
	// Task properties
	Properties *CustomizationTaskProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

CustomizationTask - Represents a Task to be used in customizing a Dev Box.

func (CustomizationTask) MarshalJSON

func (c CustomizationTask) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomizationTask.

func (*CustomizationTask) UnmarshalJSON

func (c *CustomizationTask) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomizationTask.

type CustomizationTaskInput

type CustomizationTaskInput struct {
	// READ-ONLY; Description of the input.
	Description *string

	// READ-ONLY; Whether or not the input is required.
	Required *bool

	// READ-ONLY; Type of the input.
	Type *CustomizationTaskInputType
}

CustomizationTaskInput - Input for a Task.

func (CustomizationTaskInput) MarshalJSON

func (c CustomizationTaskInput) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomizationTaskInput.

func (*CustomizationTaskInput) UnmarshalJSON

func (c *CustomizationTaskInput) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomizationTaskInput.

type CustomizationTaskInputType

type CustomizationTaskInputType string

CustomizationTaskInputType - Type of the input.

const (
	// CustomizationTaskInputTypeBoolean - The parameter accepts a boolean value.
	CustomizationTaskInputTypeBoolean CustomizationTaskInputType = "boolean"
	// CustomizationTaskInputTypeNumber - The parameter accepts a number value.
	CustomizationTaskInputTypeNumber CustomizationTaskInputType = "number"
	// CustomizationTaskInputTypeString - The parameter accepts a string value.
	CustomizationTaskInputTypeString CustomizationTaskInputType = "string"
)

func PossibleCustomizationTaskInputTypeValues

func PossibleCustomizationTaskInputTypeValues() []CustomizationTaskInputType

PossibleCustomizationTaskInputTypeValues returns the possible values for the CustomizationTaskInputType const type.

type CustomizationTaskInstance

type CustomizationTaskInstance struct {
	// REQUIRED; Name of the task.
	Name *string

	// An expression that must evaluate to true in order for the task to run.
	Condition *string

	// Display name to help differentiate multiple instances of the same task.
	DisplayName *string

	// Parameters for the task.
	Parameters []*DefinitionParametersItem

	// Timeout, in seconds. Overrides any timeout provided on the task definition.
	TimeoutInSeconds *int32
}

CustomizationTaskInstance - A customization task to run.

func (CustomizationTaskInstance) MarshalJSON

func (c CustomizationTaskInstance) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomizationTaskInstance.

func (*CustomizationTaskInstance) UnmarshalJSON

func (c *CustomizationTaskInstance) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomizationTaskInstance.

type CustomizationTaskListResult

type CustomizationTaskListResult struct {
	// READ-ONLY; The CustomizationTask items on this page
	Value []*CustomizationTask

	// The link to the next page of items
	NextLink *string
}

CustomizationTaskListResult - Paged collection of CustomizationTask items

func (CustomizationTaskListResult) MarshalJSON

func (c CustomizationTaskListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomizationTaskListResult.

func (*CustomizationTaskListResult) UnmarshalJSON

func (c *CustomizationTaskListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomizationTaskListResult.

type CustomizationTaskProperties

type CustomizationTaskProperties struct {
	// READ-ONLY; Inputs to the task.
	Inputs map[string]*CustomizationTaskInput

	// READ-ONLY; The default timeout for the task.
	Timeout *int32

	// READ-ONLY; Validation status for the Task.
	ValidationStatus *CatalogResourceValidationStatus
}

CustomizationTaskProperties - Properties of a Task.

func (CustomizationTaskProperties) MarshalJSON

func (c CustomizationTaskProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type CustomizationTaskProperties.

func (*CustomizationTaskProperties) UnmarshalJSON

func (c *CustomizationTaskProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type CustomizationTaskProperties.

type CustomizationTasksClient

type CustomizationTasksClient struct {
	// contains filtered or unexported fields
}

CustomizationTasksClient contains the methods for the CustomizationTasks group. Don't use this type directly, use NewCustomizationTasksClient() instead.

Generated from API version 2026-01-01-preview

func NewCustomizationTasksClient

func NewCustomizationTasksClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CustomizationTasksClient, error)

NewCustomizationTasksClient creates a new instance of CustomizationTasksClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*CustomizationTasksClient) Get

func (client *CustomizationTasksClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, taskName string, options *CustomizationTasksClientGetOptions) (CustomizationTasksClientGetResponse, error)

Get - Gets a Task from the catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • taskName - The name of the Customization Task.
  • options - CustomizationTasksClientGetOptions contains the optional parameters for the CustomizationTasksClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/CustomizationTasks_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCustomizationTasksClient().Get(ctx, "rg1", "Contoso", "CentralCatalog", "SampleTask", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CustomizationTasksClientGetResponse{
	// 	CustomizationTask: armdevcenter.CustomizationTask{
	// 		Name: to.Ptr("SampleTask"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/tasks"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog/tasks/SampleTask"),
	// 		Properties: &armdevcenter.CustomizationTaskProperties{
	// 			Inputs: map[string]*armdevcenter.CustomizationTaskInput{
	// 				"feed": &armdevcenter.CustomizationTaskInput{
	// 					Type: to.Ptr(armdevcenter.CustomizationTaskInputTypeString),
	// 				},
	// 				"package": &armdevcenter.CustomizationTaskInput{
	// 					Type: to.Ptr(armdevcenter.CustomizationTaskInputTypeString),
	// 					Required: to.Ptr(true),
	// 				},
	// 			},
	// 			Timeout: to.Ptr[int32](30),
	// 			ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*CustomizationTasksClient) GetErrorDetails

func (client *CustomizationTasksClient) GetErrorDetails(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, taskName string, options *CustomizationTasksClientGetErrorDetailsOptions) (CustomizationTasksClientGetErrorDetailsResponse, error)

GetErrorDetails - Gets Customization Task error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • taskName - The name of the Customization Task.
  • options - CustomizationTasksClientGetErrorDetailsOptions contains the optional parameters for the CustomizationTasksClient.GetErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/CustomizationTasks_GetErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewCustomizationTasksClient().GetErrorDetails(ctx, "rg1", "Contoso", "CentralCatalog", "SampleTask", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.CustomizationTasksClientGetErrorDetailsResponse{
	// 	CatalogResourceValidationErrorDetails: armdevcenter.CatalogResourceValidationErrorDetails{
	// 		Errors: []*armdevcenter.CatalogErrorDetails{
	// 			{
	// 				Code: to.Ptr("ParameterValueInvalid"),
	// 				Message: to.Ptr("Expected parameter value for 'InstanceCount' to be integer but found the string 'test'."),
	// 			},
	// 		},
	// 	},
	// }
}

func (*CustomizationTasksClient) NewListByCatalogPager

func (client *CustomizationTasksClient) NewListByCatalogPager(resourceGroupName string, devCenterName string, catalogName string, options *CustomizationTasksClientListByCatalogOptions) *runtime.Pager[CustomizationTasksClientListByCatalogResponse]

NewListByCatalogPager - List Tasks in the catalog.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - CustomizationTasksClientListByCatalogOptions contains the optional parameters for the CustomizationTasksClient.NewListByCatalogPager method.
Example

Generated from example definition: 2026-01-01-preview/CustomizationTasks_ListByCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewCustomizationTasksClient().NewListByCatalogPager("rg1", "Contoso", "CentralCatalog", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.CustomizationTasksClientListByCatalogResponse{
		// 	CustomizationTaskListResult: armdevcenter.CustomizationTaskListResult{
		// 		Value: []*armdevcenter.CustomizationTask{
		// 			{
		// 				Name: to.Ptr("SampleTask"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/tasks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/CentralCatalog/tasks/SampleTask"),
		// 				Properties: &armdevcenter.CustomizationTaskProperties{
		// 					Inputs: map[string]*armdevcenter.CustomizationTaskInput{
		// 						"feed": &armdevcenter.CustomizationTaskInput{
		// 							Type: to.Ptr(armdevcenter.CustomizationTaskInputTypeString),
		// 						},
		// 						"package": &armdevcenter.CustomizationTaskInput{
		// 							Type: to.Ptr(armdevcenter.CustomizationTaskInputTypeString),
		// 							Required: to.Ptr(true),
		// 						},
		// 					},
		// 					Timeout: to.Ptr[int32](30),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type CustomizationTasksClientGetErrorDetailsOptions

type CustomizationTasksClientGetErrorDetailsOptions struct {
}

CustomizationTasksClientGetErrorDetailsOptions contains the optional parameters for the CustomizationTasksClient.GetErrorDetails method.

type CustomizationTasksClientGetErrorDetailsResponse

type CustomizationTasksClientGetErrorDetailsResponse struct {
	// List of validator error details. Populated when changes are made to the resource or its dependent resources that impact
	// the validity of the Catalog resource.
	CatalogResourceValidationErrorDetails
}

CustomizationTasksClientGetErrorDetailsResponse contains the response from method CustomizationTasksClient.GetErrorDetails.

type CustomizationTasksClientGetOptions

type CustomizationTasksClientGetOptions struct {
}

CustomizationTasksClientGetOptions contains the optional parameters for the CustomizationTasksClient.Get method.

type CustomizationTasksClientGetResponse

type CustomizationTasksClientGetResponse struct {
	// Represents a Task to be used in customizing a Dev Box.
	CustomizationTask
}

CustomizationTasksClientGetResponse contains the response from method CustomizationTasksClient.Get.

type CustomizationTasksClientListByCatalogOptions

type CustomizationTasksClientListByCatalogOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

CustomizationTasksClientListByCatalogOptions contains the optional parameters for the CustomizationTasksClient.NewListByCatalogPager method.

type CustomizationTasksClientListByCatalogResponse

type CustomizationTasksClientListByCatalogResponse struct {
	// Paged collection of CustomizationTask items
	CustomizationTaskListResult
}

CustomizationTasksClientListByCatalogResponse contains the response from method CustomizationTasksClient.NewListByCatalogPager.

type DayOfWeek

type DayOfWeek string

DayOfWeek - The days of the week.

const (
	// DayOfWeekFriday - Friday
	DayOfWeekFriday DayOfWeek = "Friday"
	// DayOfWeekMonday - Monday
	DayOfWeekMonday DayOfWeek = "Monday"
	// DayOfWeekSaturday - Saturday
	DayOfWeekSaturday DayOfWeek = "Saturday"
	// DayOfWeekSunday - Sunday
	DayOfWeekSunday DayOfWeek = "Sunday"
	// DayOfWeekThursday - Thursday
	DayOfWeekThursday DayOfWeek = "Thursday"
	// DayOfWeekTuesday - Tuesday
	DayOfWeekTuesday DayOfWeek = "Tuesday"
	// DayOfWeekWednesday - Wednesday
	DayOfWeekWednesday DayOfWeek = "Wednesday"
)

func PossibleDayOfWeekValues

func PossibleDayOfWeekValues() []DayOfWeek

PossibleDayOfWeekValues returns the possible values for the DayOfWeek const type.

type DefaultValue

type DefaultValue struct {
	// The name of the feature property.
	Name *string

	// The default value to be applied for the given property.
	Value *string
}

DefaultValue - A default value that can be provided for a feature property.

func (DefaultValue) MarshalJSON

func (d DefaultValue) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DefaultValue.

func (*DefaultValue) UnmarshalJSON

func (d *DefaultValue) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DefaultValue.

type DefinitionParametersItem

type DefinitionParametersItem struct {
	// REQUIRED; Name of the parameter.
	Name *string

	// REQUIRED; value of the parameter.
	Value *string
}

DefinitionParametersItem - Parameters for the task.

func (DefinitionParametersItem) MarshalJSON

func (d DefinitionParametersItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DefinitionParametersItem.

func (*DefinitionParametersItem) UnmarshalJSON

func (d *DefinitionParametersItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DefinitionParametersItem.

type DevBoxDefinition

type DevBoxDefinition struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Dev Box definition properties
	Properties *DevBoxDefinitionProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

DevBoxDefinition - Represents a definition for a Developer Machine.

func (DevBoxDefinition) MarshalJSON

func (d DevBoxDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxDefinition.

func (*DevBoxDefinition) UnmarshalJSON

func (d *DevBoxDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxDefinition.

type DevBoxDefinitionListResult

type DevBoxDefinitionListResult struct {
	// READ-ONLY; The DevBoxDefinition items on this page
	Value []*DevBoxDefinition

	// The link to the next page of items
	NextLink *string
}

DevBoxDefinitionListResult - Paged collection of DevBoxDefinition items

func (DevBoxDefinitionListResult) MarshalJSON

func (d DevBoxDefinitionListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxDefinitionListResult.

func (*DevBoxDefinitionListResult) UnmarshalJSON

func (d *DevBoxDefinitionListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxDefinitionListResult.

type DevBoxDefinitionProperties

type DevBoxDefinitionProperties struct {
	// Indicates whether Dev Boxes created with this definition are capable of hibernation. Not all images are capable of supporting
	// hibernation. To find out more see https://aka.ms/devbox/hibernate
	HibernateSupport *HibernateSupport

	// Image reference information.
	ImageReference *ImageReference

	// The storage type used for the Operating System disk of Dev Boxes created using this definition.
	OSStorageType *string

	// The SKU for Dev Boxes created using this definition.
	SKU *SKU

	// READ-ONLY; Image reference information for the currently active image (only populated during updates).
	ActiveImageReference *ImageReference

	// READ-ONLY; Details for image validator error. Populated when the image validation is not successful.
	ImageValidationErrorDetails *ImageValidationErrorDetails

	// READ-ONLY; Validation status of the configured image.
	ImageValidationStatus *ImageValidationStatus

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState

	// READ-ONLY; Validation status for the Dev Box Definition.
	ValidationStatus *CatalogResourceValidationStatus
}

DevBoxDefinitionProperties - Properties of a Dev Box definition.

func (DevBoxDefinitionProperties) MarshalJSON

func (d DevBoxDefinitionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxDefinitionProperties.

func (*DevBoxDefinitionProperties) UnmarshalJSON

func (d *DevBoxDefinitionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxDefinitionProperties.

type DevBoxDefinitionUpdate

type DevBoxDefinitionUpdate struct {
	// The geo-location where the resource lives.
	Location *string

	// Properties of a Dev Box definition to be updated.
	Properties *DevBoxDefinitionUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

DevBoxDefinitionUpdate - Partial update of a Dev Box definition resource.

func (DevBoxDefinitionUpdate) MarshalJSON

func (d DevBoxDefinitionUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxDefinitionUpdate.

func (*DevBoxDefinitionUpdate) UnmarshalJSON

func (d *DevBoxDefinitionUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxDefinitionUpdate.

type DevBoxDefinitionUpdateProperties

type DevBoxDefinitionUpdateProperties struct {
	// Indicates whether Dev Boxes created with this definition are capable of hibernation. Not all images are capable of supporting
	// hibernation. To find out more see https://aka.ms/devbox/hibernate
	HibernateSupport *HibernateSupport

	// Image reference information.
	ImageReference *ImageReference

	// The storage type used for the Operating System disk of Dev Boxes created using this definition.
	OSStorageType *string

	// The SKU for Dev Boxes created using this definition.
	SKU *SKU
}

DevBoxDefinitionUpdateProperties - Properties of a Dev Box definition. These properties can be updated after the resource has been created.

func (DevBoxDefinitionUpdateProperties) MarshalJSON

func (d DevBoxDefinitionUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxDefinitionUpdateProperties.

func (*DevBoxDefinitionUpdateProperties) UnmarshalJSON

func (d *DevBoxDefinitionUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxDefinitionUpdateProperties.

type DevBoxDefinitionsClient

type DevBoxDefinitionsClient struct {
	// contains filtered or unexported fields
}

DevBoxDefinitionsClient contains the methods for the DevBoxDefinitions group. Don't use this type directly, use NewDevBoxDefinitionsClient() instead.

Generated from API version 2026-01-01-preview

func NewDevBoxDefinitionsClient

func NewDevBoxDefinitionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DevBoxDefinitionsClient, error)

NewDevBoxDefinitionsClient creates a new instance of DevBoxDefinitionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*DevBoxDefinitionsClient) BeginCreateOrUpdate

func (client *DevBoxDefinitionsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, devBoxDefinitionName string, body DevBoxDefinition, options *DevBoxDefinitionsClientBeginCreateOrUpdateOptions) (*runtime.Poller[DevBoxDefinitionsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a Dev Box definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • devBoxDefinitionName - The name of the Dev Box definition.
  • body - Represents a Dev Box definition.
  • options - DevBoxDefinitionsClientBeginCreateOrUpdateOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_Create.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevBoxDefinitionsClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "WebDevBox", armdevcenter.DevBoxDefinition{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.DevBoxDefinitionProperties{
			HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
			ImageReference: &armdevcenter.ImageReference{
				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
			},
			SKU: &armdevcenter.SKU{
				Name: to.Ptr("Preview"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevBoxDefinitionsClientCreateOrUpdateResponse{
	// 	DevBoxDefinition: armdevcenter.DevBoxDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/devboxdefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/devBoxDefinitionName"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.DevBoxDefinitionProperties{
	// 			HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SKU: &armdevcenter.SKU{
	// 				Name: to.Ptr("Preview"),
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*DevBoxDefinitionsClient) BeginDelete

func (client *DevBoxDefinitionsClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, devBoxDefinitionName string, options *DevBoxDefinitionsClientBeginDeleteOptions) (*runtime.Poller[DevBoxDefinitionsClientDeleteResponse], error)

BeginDelete - Deletes a Dev Box definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • devBoxDefinitionName - The name of the Dev Box definition.
  • options - DevBoxDefinitionsClientBeginDeleteOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevBoxDefinitionsClient().BeginDelete(ctx, "rg1", "Contoso", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*DevBoxDefinitionsClient) BeginUpdate

func (client *DevBoxDefinitionsClient) BeginUpdate(ctx context.Context, resourceGroupName string, devCenterName string, devBoxDefinitionName string, body DevBoxDefinitionUpdate, options *DevBoxDefinitionsClientBeginUpdateOptions) (*runtime.Poller[DevBoxDefinitionsClientUpdateResponse], error)

BeginUpdate - Partially updates a Dev Box definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • devBoxDefinitionName - The name of the Dev Box definition.
  • body - Represents a Dev Box definition.
  • options - DevBoxDefinitionsClientBeginUpdateOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevBoxDefinitionsClient().BeginUpdate(ctx, "rg1", "Contoso", "WebDevBox", armdevcenter.DevBoxDefinitionUpdate{
		Properties: &armdevcenter.DevBoxDefinitionUpdateProperties{
			ImageReference: &armdevcenter.ImageReference{
				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/2.0.0"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevBoxDefinitionsClientUpdateResponse{
	// 	DevBoxDefinition: armdevcenter.DevBoxDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/devboxdefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.DevBoxDefinitionProperties{
	// 			HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/version/2.0.0"),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SKU: &armdevcenter.SKU{
	// 				Name: to.Ptr("Preview"),
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*DevBoxDefinitionsClient) Get

func (client *DevBoxDefinitionsClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, devBoxDefinitionName string, options *DevBoxDefinitionsClientGetOptions) (DevBoxDefinitionsClientGetResponse, error)

Get - Gets a Dev Box definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • devBoxDefinitionName - The name of the Dev Box definition.
  • options - DevBoxDefinitionsClientGetOptions contains the optional parameters for the DevBoxDefinitionsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewDevBoxDefinitionsClient().Get(ctx, "rg1", "Contoso", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevBoxDefinitionsClientGetResponse{
	// 	DevBoxDefinition: armdevcenter.DevBoxDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/devboxdefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.DevBoxDefinitionProperties{
	// 			HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SKU: &armdevcenter.SKU{
	// 				Name: to.Ptr("Preview"),
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*DevBoxDefinitionsClient) GetByProject

func (client *DevBoxDefinitionsClient) GetByProject(ctx context.Context, resourceGroupName string, projectName string, devBoxDefinitionName string, options *DevBoxDefinitionsClientGetByProjectOptions) (DevBoxDefinitionsClientGetByProjectResponse, error)

GetByProject - Gets a Dev Box definition configured for a project. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • devBoxDefinitionName - The name of the Dev Box definition.
  • options - DevBoxDefinitionsClientGetByProjectOptions contains the optional parameters for the DevBoxDefinitionsClient.GetByProject method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_GetByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewDevBoxDefinitionsClient().GetByProject(ctx, "rg1", "ContosoProject", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevBoxDefinitionsClientGetByProjectResponse{
	// 	DevBoxDefinition: armdevcenter.DevBoxDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/devboxdefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/devboxdefinitions/WebDevBox"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.DevBoxDefinitionProperties{
	// 			HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SKU: &armdevcenter.SKU{
	// 				Name: to.Ptr("Preview"),
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*DevBoxDefinitionsClient) NewListByDevCenterPager

func (client *DevBoxDefinitionsClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *DevBoxDefinitionsClientListByDevCenterOptions) *runtime.Pager[DevBoxDefinitionsClientListByDevCenterResponse]

NewListByDevCenterPager - List Dev Box definitions for a devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - DevBoxDefinitionsClientListByDevCenterOptions contains the optional parameters for the DevBoxDefinitionsClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_ListByDevCenter.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewDevBoxDefinitionsClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.DevBoxDefinitionsClientListByDevCenterResponse{
		// 	DevBoxDefinitionListResult: armdevcenter.DevBoxDefinitionListResult{
		// 		Value: []*armdevcenter.DevBoxDefinition{
		// 			{
		// 				Name: to.Ptr("WebDevBox"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/devboxdefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/devboxdefinitions/WebDevBox"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.DevBoxDefinitionProperties{
		// 					HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SKU: &armdevcenter.SKU{
		// 						Name: to.Ptr("Preview"),
		// 					},
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*DevBoxDefinitionsClient) NewListByProjectPager

NewListByProjectPager - List Dev Box definitions configured for a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - DevBoxDefinitionsClientListByProjectOptions contains the optional parameters for the DevBoxDefinitionsClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/DevBoxDefinitions_ListByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewDevBoxDefinitionsClient().NewListByProjectPager("rg1", "ContosoProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.DevBoxDefinitionsClientListByProjectResponse{
		// 	DevBoxDefinitionListResult: armdevcenter.DevBoxDefinitionListResult{
		// 		Value: []*armdevcenter.DevBoxDefinition{
		// 			{
		// 				Name: to.Ptr("WebDevBox"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/devboxdefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/devboxdefinitions/WebDevBox"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.DevBoxDefinitionProperties{
		// 					HibernateSupport: to.Ptr(armdevcenter.HibernateSupportEnabled),
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SKU: &armdevcenter.SKU{
		// 						Name: to.Ptr("Preview"),
		// 					},
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type DevBoxDefinitionsClientBeginCreateOrUpdateOptions

type DevBoxDefinitionsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevBoxDefinitionsClientBeginCreateOrUpdateOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginCreateOrUpdate method.

type DevBoxDefinitionsClientBeginDeleteOptions

type DevBoxDefinitionsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevBoxDefinitionsClientBeginDeleteOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginDelete method.

type DevBoxDefinitionsClientBeginUpdateOptions

type DevBoxDefinitionsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevBoxDefinitionsClientBeginUpdateOptions contains the optional parameters for the DevBoxDefinitionsClient.BeginUpdate method.

type DevBoxDefinitionsClientCreateOrUpdateResponse

type DevBoxDefinitionsClientCreateOrUpdateResponse struct {
	// Represents a definition for a Developer Machine.
	DevBoxDefinition
}

DevBoxDefinitionsClientCreateOrUpdateResponse contains the response from method DevBoxDefinitionsClient.BeginCreateOrUpdate.

type DevBoxDefinitionsClientDeleteResponse

type DevBoxDefinitionsClientDeleteResponse struct {
}

DevBoxDefinitionsClientDeleteResponse contains the response from method DevBoxDefinitionsClient.BeginDelete.

type DevBoxDefinitionsClientGetByProjectOptions

type DevBoxDefinitionsClientGetByProjectOptions struct {
}

DevBoxDefinitionsClientGetByProjectOptions contains the optional parameters for the DevBoxDefinitionsClient.GetByProject method.

type DevBoxDefinitionsClientGetByProjectResponse

type DevBoxDefinitionsClientGetByProjectResponse struct {
	// Represents a definition for a Developer Machine.
	DevBoxDefinition
}

DevBoxDefinitionsClientGetByProjectResponse contains the response from method DevBoxDefinitionsClient.GetByProject.

type DevBoxDefinitionsClientGetOptions

type DevBoxDefinitionsClientGetOptions struct {
}

DevBoxDefinitionsClientGetOptions contains the optional parameters for the DevBoxDefinitionsClient.Get method.

type DevBoxDefinitionsClientGetResponse

type DevBoxDefinitionsClientGetResponse struct {
	// Represents a definition for a Developer Machine.
	DevBoxDefinition
}

DevBoxDefinitionsClientGetResponse contains the response from method DevBoxDefinitionsClient.Get.

type DevBoxDefinitionsClientListByDevCenterOptions

type DevBoxDefinitionsClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

DevBoxDefinitionsClientListByDevCenterOptions contains the optional parameters for the DevBoxDefinitionsClient.NewListByDevCenterPager method.

type DevBoxDefinitionsClientListByDevCenterResponse

type DevBoxDefinitionsClientListByDevCenterResponse struct {
	// Paged collection of DevBoxDefinition items
	DevBoxDefinitionListResult
}

DevBoxDefinitionsClientListByDevCenterResponse contains the response from method DevBoxDefinitionsClient.NewListByDevCenterPager.

type DevBoxDefinitionsClientListByProjectOptions

type DevBoxDefinitionsClientListByProjectOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

DevBoxDefinitionsClientListByProjectOptions contains the optional parameters for the DevBoxDefinitionsClient.NewListByProjectPager method.

type DevBoxDefinitionsClientListByProjectResponse

type DevBoxDefinitionsClientListByProjectResponse struct {
	// Paged collection of DevBoxDefinition items
	DevBoxDefinitionListResult
}

DevBoxDefinitionsClientListByProjectResponse contains the response from method DevBoxDefinitionsClient.NewListByProjectPager.

type DevBoxDefinitionsClientUpdateResponse

type DevBoxDefinitionsClientUpdateResponse struct {
	// Represents a definition for a Developer Machine.
	DevBoxDefinition
}

DevBoxDefinitionsClientUpdateResponse contains the response from method DevBoxDefinitionsClient.BeginUpdate.

type DevBoxDeleteMode

type DevBoxDeleteMode string

DevBoxDeleteMode - Indicates possible values for Dev Box delete mode.

const (
	// DevBoxDeleteModeAuto - Dev Boxes will be deleted automatically according to configured settings.
	DevBoxDeleteModeAuto DevBoxDeleteMode = "Auto"
	// DevBoxDeleteModeManual - Dev Boxes will not be deleted automatically, and user must manually delete. This is the default.
	DevBoxDeleteModeManual DevBoxDeleteMode = "Manual"
)

func PossibleDevBoxDeleteModeValues

func PossibleDevBoxDeleteModeValues() []DevBoxDeleteMode

PossibleDevBoxDeleteModeValues returns the possible values for the DevBoxDeleteMode const type.

type DevBoxProvisioningSettings

type DevBoxProvisioningSettings struct {
	// Indicates whether to install the Azure Monitor Agent service on Dev Boxes that belong to this dev center
	InstallAzureMonitorAgentEnableStatus *InstallAzureMonitorAgentEnableStatus
}

DevBoxProvisioningSettings - Provisioning settings that apply to all Dev Boxes created in this dev center.

func (DevBoxProvisioningSettings) MarshalJSON

func (d DevBoxProvisioningSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxProvisioningSettings.

func (*DevBoxProvisioningSettings) UnmarshalJSON

func (d *DevBoxProvisioningSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxProvisioningSettings.

type DevBoxScheduleDeleteSettings

type DevBoxScheduleDeleteSettings struct {
	// Indicates whether scheduled deletion should be canceled when a user connects to the dev box.
	CancelOnConnectEnableStatus *CancelOnConnectEnableStatus

	// Indicates the delete mode for Dev Boxes within this project.
	DeleteMode *DevBoxDeleteMode

	// ISO8601 duration required for the dev box to be marked for deletion prior to it being deleted. ISO8601 format PT[n]H[n]M[n]S.
	GracePeriod *string

	// ISO8601 duration required for the dev box to not be inactive prior to it being scheduled for deletion. ISO8601 format PT[n]H[n]M[n]S.
	InactiveThreshold *string
}

DevBoxScheduleDeleteSettings - Settings controlling the auto deletion of inactive dev boxes.

func (DevBoxScheduleDeleteSettings) MarshalJSON

func (d DevBoxScheduleDeleteSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevBoxScheduleDeleteSettings.

func (*DevBoxScheduleDeleteSettings) UnmarshalJSON

func (d *DevBoxScheduleDeleteSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevBoxScheduleDeleteSettings.

type DevBoxTunnelEnableStatus

type DevBoxTunnelEnableStatus string

DevBoxTunnelEnableStatus - Indicates whether Dev Box Tunnel is enabled.

const (
	// DevBoxTunnelEnableStatusDisabled - Dev Box Tunnel is enabled.
	DevBoxTunnelEnableStatusDisabled DevBoxTunnelEnableStatus = "Disabled"
	// DevBoxTunnelEnableStatusEnabled - Dev Box Tunnel is disabled.
	DevBoxTunnelEnableStatusEnabled DevBoxTunnelEnableStatus = "Enabled"
)

func PossibleDevBoxTunnelEnableStatusValues

func PossibleDevBoxTunnelEnableStatusValues() []DevBoxTunnelEnableStatus

PossibleDevBoxTunnelEnableStatusValues returns the possible values for the DevBoxTunnelEnableStatus const type.

type DevCenter

type DevCenter struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// DevCenter properties
	Properties *Properties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

DevCenter - Represents a devcenter resource.

func (DevCenter) MarshalJSON

func (d DevCenter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type DevCenter.

func (*DevCenter) UnmarshalJSON

func (d *DevCenter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type DevCenter.

type DevCentersClient

type DevCentersClient struct {
	// contains filtered or unexported fields
}

DevCentersClient contains the methods for the DevCenters group. Don't use this type directly, use NewDevCentersClient() instead.

Generated from API version 2026-01-01-preview

func NewDevCentersClient

func NewDevCentersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DevCentersClient, error)

NewDevCentersClient creates a new instance of DevCentersClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*DevCentersClient) BeginCreateOrUpdate

func (client *DevCentersClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, body DevCenter, options *DevCentersClientBeginCreateOrUpdateOptions) (*runtime.Poller[DevCentersClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a devcenter resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • body - Represents a devcenter.
  • options - DevCentersClientBeginCreateOrUpdateOptions contains the optional parameters for the DevCentersClient.BeginCreateOrUpdate method.
Example (DevCentersCreate)

Generated from example definition: 2026-01-01-preview/DevCenters_Create.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", armdevcenter.DevCenter{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.Properties{
			DevBoxProvisioningSettings: &armdevcenter.DevBoxProvisioningSettings{
				InstallAzureMonitorAgentEnableStatus: to.Ptr(armdevcenter.InstallAzureMonitorAgentEnableStatusEnabled),
			},
			DisplayName: to.Ptr("ContosoDevCenter"),
			ProjectCatalogSettings: &armdevcenter.ProjectCatalogSettingsInfo{
				CatalogItemSyncEnableStatus: to.Ptr(armdevcenter.CatalogItemSyncEnableStatusEnabled),
			},
		},
		Tags: map[string]*string{
			"CostCode": to.Ptr("12345"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientCreateOrUpdateResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevBoxProvisioningSettings: &armdevcenter.DevBoxProvisioningSettings{
	// 				InstallAzureMonitorAgentEnableStatus: to.Ptr(armdevcenter.InstallAzureMonitorAgentEnableStatusEnabled),
	// 			},
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			NetworkSettings: &armdevcenter.NetworkSettings{
	// 				MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusEnabled),
	// 			},
	// 			ProjectCatalogSettings: &armdevcenter.ProjectCatalogSettingsInfo{
	// 				CatalogItemSyncEnableStatus: to.Ptr(armdevcenter.CatalogItemSyncEnableStatusEnabled),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 			"hidden-title": to.Ptr("ContosoDevCenter"),
	// 		},
	// 	},
	// }
}
Example (DevCentersCreateWithDisabledManagedNetworks)

Generated from example definition: 2026-01-01-preview/DevCenters_CreateWithDisabledManagedNetworks.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", armdevcenter.DevCenter{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.Properties{
			DisplayName: to.Ptr("ContosoDevCenter"),
			NetworkSettings: &armdevcenter.NetworkSettings{
				MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusDisabled),
			},
		},
		Tags: map[string]*string{
			"CostCode": to.Ptr("12345"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientCreateOrUpdateResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			NetworkSettings: &armdevcenter.NetworkSettings{
	// 				MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusDisabled),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 		},
	// 	},
	// }
}
Example (DevCentersCreateWithEncryption)

Generated from example definition: 2026-01-01-preview/DevCenters_CreateWithEncryption.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", armdevcenter.DevCenter{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.Properties{
			DisplayName: to.Ptr("ContosoDevCenter"),
			Encryption: &armdevcenter.Encryption{
				CustomerManagedKeyEncryption: &armdevcenter.CustomerManagedKeyEncryption{
					KeyEncryptionKeyIdentity: &armdevcenter.CustomerManagedKeyEncryptionKeyIdentity{
						IdentityType:                   to.Ptr(armdevcenter.KeyEncryptionKeyIdentityTypeUserAssignedIdentity),
						UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
					},
					KeyEncryptionKeyURL: to.Ptr("https://contosovault.vault.azure.net/keys/contosokek"),
				},
			},
		},
		Tags: map[string]*string{
			"CostCode": to.Ptr("12345"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientCreateOrUpdateResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			Encryption: &armdevcenter.Encryption{
	// 				CustomerManagedKeyEncryption: &armdevcenter.CustomerManagedKeyEncryption{
	// 					KeyEncryptionKeyIdentity: &armdevcenter.CustomerManagedKeyEncryptionKeyIdentity{
	// 						IdentityType: to.Ptr(armdevcenter.KeyEncryptionKeyIdentityTypeUserAssignedIdentity),
	// 						UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
	// 					},
	// 					KeyEncryptionKeyURL: to.Ptr("https://contosovault.vault.azure.net/keys/contosokek"),
	// 				},
	// 			},
	// 			NetworkSettings: &armdevcenter.NetworkSettings{
	// 				MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusEnabled),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 		},
	// 	},
	// }
}
Example (DevCentersCreateWithUserIdentity)

Generated from example definition: 2026-01-01-preview/DevCenters_CreateWithUserIdentity.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", armdevcenter.DevCenter{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.Properties{
			DisplayName: to.Ptr("ContosoDevCenter"),
		},
		Tags: map[string]*string{
			"CostCode": to.Ptr("12345"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientCreateOrUpdateResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			NetworkSettings: &armdevcenter.NetworkSettings{
	// 				MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusEnabled),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 		},
	// 	},
	// }
}

func (*DevCentersClient) BeginDelete

func (client *DevCentersClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, options *DevCentersClientBeginDeleteOptions) (*runtime.Poller[DevCentersClientDeleteResponse], error)

BeginDelete - Deletes a devcenter. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - DevCentersClientBeginDeleteOptions contains the optional parameters for the DevCentersClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/DevCenters_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginDelete(ctx, "rg1", "Contoso", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*DevCentersClient) BeginUpdate

func (client *DevCentersClient) BeginUpdate(ctx context.Context, resourceGroupName string, devCenterName string, body Update, options *DevCentersClientBeginUpdateOptions) (*runtime.Poller[DevCentersClientUpdateResponse], error)

BeginUpdate - Partially updates a devcenter. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • body - Updatable devcenter properties.
  • options - DevCentersClientBeginUpdateOptions contains the optional parameters for the DevCentersClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/DevCenters_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewDevCentersClient().BeginUpdate(ctx, "rg1", "Contoso", armdevcenter.Update{
		Tags: map[string]*string{
			"CostCode": to.Ptr("12345"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientUpdateResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 		},
	// 	},
	// }
}

func (*DevCentersClient) Get

func (client *DevCentersClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, options *DevCentersClientGetOptions) (DevCentersClientGetResponse, error)

Get - Gets a devcenter. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - DevCentersClientGetOptions contains the optional parameters for the DevCentersClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/DevCenters_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewDevCentersClient().Get(ctx, "rg1", "Contoso", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.DevCentersClientGetResponse{
	// 	DevCenter: armdevcenter.DevCenter{
	// 		Name: to.Ptr("Contoso"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.Properties{
	// 			DevBoxProvisioningSettings: &armdevcenter.DevBoxProvisioningSettings{
	// 				InstallAzureMonitorAgentEnableStatus: to.Ptr(armdevcenter.InstallAzureMonitorAgentEnableStatusEnabled),
	// 			},
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("ContosoDevCenter"),
	// 			ProjectCatalogSettings: &armdevcenter.ProjectCatalogSettingsInfo{
	// 				CatalogItemSyncEnableStatus: to.Ptr(armdevcenter.CatalogItemSyncEnableStatusEnabled),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:10.896Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user2"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCode": to.Ptr("12345"),
	// 			"hidden-title": to.Ptr("ContosoDevCenter"),
	// 		},
	// 	},
	// }
}

func (*DevCentersClient) NewListByResourceGroupPager

func (client *DevCentersClient) NewListByResourceGroupPager(resourceGroupName string, options *DevCentersClientListByResourceGroupOptions) *runtime.Pager[DevCentersClientListByResourceGroupResponse]

NewListByResourceGroupPager - Lists all devcenters in a resource group.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - DevCentersClientListByResourceGroupOptions contains the optional parameters for the DevCentersClient.NewListByResourceGroupPager method.
Example

Generated from example definition: 2026-01-01-preview/DevCenters_ListByResourceGroup.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewDevCentersClient().NewListByResourceGroupPager("rg1", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.DevCentersClientListByResourceGroupResponse{
		// 	ListResult: armdevcenter.ListResult{
		// 		Value: []*armdevcenter.DevCenter{
		// 			{
		// 				Name: to.Ptr("Contoso"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/contoso"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.Properties{
		// 					DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
		// 					DisplayName: to.Ptr("ContosoDevCenter"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
		// 					CreatedBy: to.Ptr("string"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("string"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCode": to.Ptr("12345"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*DevCentersClient) NewListBySubscriptionPager

NewListBySubscriptionPager - Lists all devcenters in a subscription.

  • options - DevCentersClientListBySubscriptionOptions contains the optional parameters for the DevCentersClient.NewListBySubscriptionPager method.
Example

Generated from example definition: 2026-01-01-preview/DevCenters_ListBySubscription.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewDevCentersClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.DevCentersClientListBySubscriptionResponse{
		// 	ListResult: armdevcenter.ListResult{
		// 		Value: []*armdevcenter.DevCenter{
		// 			{
		// 				Name: to.Ptr("Contoso"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/contoso"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.Properties{
		// 					DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
		// 					DisplayName: to.Ptr("ContosoDevCenter"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
		// 					CreatedBy: to.Ptr("string"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-11T22:00:08.896Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("string"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCode": to.Ptr("12345"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type DevCentersClientBeginCreateOrUpdateOptions

type DevCentersClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevCentersClientBeginCreateOrUpdateOptions contains the optional parameters for the DevCentersClient.BeginCreateOrUpdate method.

type DevCentersClientBeginDeleteOptions

type DevCentersClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevCentersClientBeginDeleteOptions contains the optional parameters for the DevCentersClient.BeginDelete method.

type DevCentersClientBeginUpdateOptions

type DevCentersClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

DevCentersClientBeginUpdateOptions contains the optional parameters for the DevCentersClient.BeginUpdate method.

type DevCentersClientCreateOrUpdateResponse

type DevCentersClientCreateOrUpdateResponse struct {
	// Represents a devcenter resource.
	DevCenter
}

DevCentersClientCreateOrUpdateResponse contains the response from method DevCentersClient.BeginCreateOrUpdate.

type DevCentersClientDeleteResponse

type DevCentersClientDeleteResponse struct {
}

DevCentersClientDeleteResponse contains the response from method DevCentersClient.BeginDelete.

type DevCentersClientGetOptions

type DevCentersClientGetOptions struct {
}

DevCentersClientGetOptions contains the optional parameters for the DevCentersClient.Get method.

type DevCentersClientGetResponse

type DevCentersClientGetResponse struct {
	// Represents a devcenter resource.
	DevCenter
}

DevCentersClientGetResponse contains the response from method DevCentersClient.Get.

type DevCentersClientListByResourceGroupOptions

type DevCentersClientListByResourceGroupOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

DevCentersClientListByResourceGroupOptions contains the optional parameters for the DevCentersClient.NewListByResourceGroupPager method.

type DevCentersClientListByResourceGroupResponse

type DevCentersClientListByResourceGroupResponse struct {
	// Paged collection of DevCenter items
	ListResult
}

DevCentersClientListByResourceGroupResponse contains the response from method DevCentersClient.NewListByResourceGroupPager.

type DevCentersClientListBySubscriptionOptions

type DevCentersClientListBySubscriptionOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

DevCentersClientListBySubscriptionOptions contains the optional parameters for the DevCentersClient.NewListBySubscriptionPager method.

type DevCentersClientListBySubscriptionResponse

type DevCentersClientListBySubscriptionResponse struct {
	// Paged collection of DevCenter items
	ListResult
}

DevCentersClientListBySubscriptionResponse contains the response from method DevCentersClient.NewListBySubscriptionPager.

type DevCentersClientUpdateResponse

type DevCentersClientUpdateResponse struct {
	// Represents a devcenter resource.
	DevCenter
}

DevCentersClientUpdateResponse contains the response from method DevCentersClient.BeginUpdate.

type DevboxDisksEncryptionEnableStatus

type DevboxDisksEncryptionEnableStatus string

DevboxDisksEncryptionEnableStatus - Devbox disk encryption enable or disable status. Indicates if Devbox disks encryption is enabled or not.

const (
	// DevboxDisksEncryptionEnableStatusDisabled - Devbox disks encryption is disabled.
	DevboxDisksEncryptionEnableStatusDisabled DevboxDisksEncryptionEnableStatus = "Disabled"
	// DevboxDisksEncryptionEnableStatusEnabled - Devbox disks encryption is enabled.
	DevboxDisksEncryptionEnableStatusEnabled DevboxDisksEncryptionEnableStatus = "Enabled"
)

func PossibleDevboxDisksEncryptionEnableStatusValues

func PossibleDevboxDisksEncryptionEnableStatusValues() []DevboxDisksEncryptionEnableStatus

PossibleDevboxDisksEncryptionEnableStatusValues returns the possible values for the DevboxDisksEncryptionEnableStatus const type.

type DomainJoinType

type DomainJoinType string

DomainJoinType - Active Directory join type.

const (
	// DomainJoinTypeAzureADJoin - Azure AD Join type.
	DomainJoinTypeAzureADJoin DomainJoinType = "AzureADJoin"
	// DomainJoinTypeHybridAzureADJoin - Hybrid Azure AD Join type.
	DomainJoinTypeHybridAzureADJoin DomainJoinType = "HybridAzureADJoin"
	// DomainJoinTypeNone - No Active Directory join type.
	DomainJoinTypeNone DomainJoinType = "None"
)

func PossibleDomainJoinTypeValues

func PossibleDomainJoinTypeValues() []DomainJoinType

PossibleDomainJoinTypeValues returns the possible values for the DomainJoinType const type.

type Encryption

type Encryption struct {
	// All Customer-managed key encryption properties for the resource.
	CustomerManagedKeyEncryption *CustomerManagedKeyEncryption
}

Encryption properties.

func (Encryption) MarshalJSON

func (e Encryption) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Encryption.

func (*Encryption) UnmarshalJSON

func (e *Encryption) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Encryption.

type EncryptionSet

type EncryptionSet struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// Properties of a devcenter encryption set.
	Properties *EncryptionSetProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

EncryptionSet - Represents a devcenter encryption set resource.

func (EncryptionSet) MarshalJSON

func (e EncryptionSet) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionSet.

func (*EncryptionSet) UnmarshalJSON

func (e *EncryptionSet) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionSet.

type EncryptionSetListResult

type EncryptionSetListResult struct {
	// READ-ONLY; The DevCenterEncryptionSet items on this page
	Value []*EncryptionSet

	// The link to the next page of items
	NextLink *string
}

EncryptionSetListResult - Paged collection of DevCenterEncryptionSet items

func (EncryptionSetListResult) MarshalJSON

func (e EncryptionSetListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionSetListResult.

func (*EncryptionSetListResult) UnmarshalJSON

func (e *EncryptionSetListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionSetListResult.

type EncryptionSetProperties

type EncryptionSetProperties struct {
	// Devbox disk encryption enable or disable status. Indicates if Devbox disks encryption using DevCenter CMK is enabled or
	// not.
	DevboxDisksEncryptionEnableStatus *DevboxDisksEncryptionEnableStatus

	// The managed identity configuration used for key vault access.
	KeyEncryptionKeyIdentity *KeyEncryptionKeyIdentity

	// Key encryption key Url, versioned or non-versioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78
	// or https://contosovault.vault.azure.net/keys/contosokek.
	KeyEncryptionKeyURL *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

EncryptionSetProperties - Properties of the devcenter encryption set.

func (EncryptionSetProperties) MarshalJSON

func (e EncryptionSetProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionSetProperties.

func (*EncryptionSetProperties) UnmarshalJSON

func (e *EncryptionSetProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionSetProperties.

type EncryptionSetUpdate

type EncryptionSetUpdate struct {
	// Managed identity properties
	Identity *ManagedServiceIdentity

	// The geo-location where the resource lives.
	Location *string

	// Properties of a Dev Center encryption set to be updated.
	Properties *EncryptionSetUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

EncryptionSetUpdate - The devcenter encryption set resource for partial updates. Properties not provided in the update request will not be changed.

func (EncryptionSetUpdate) MarshalJSON

func (e EncryptionSetUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionSetUpdate.

func (*EncryptionSetUpdate) UnmarshalJSON

func (e *EncryptionSetUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionSetUpdate.

type EncryptionSetUpdateProperties

type EncryptionSetUpdateProperties struct {
	// Devbox disk encryption enable or disable status. Indicates if Devbox disks encryption using DevCenter CMK is enabled or
	// not.
	DevboxDisksEncryptionEnableStatus *DevboxDisksEncryptionEnableStatus

	// The managed identity configuration used for key vault access.
	KeyEncryptionKeyIdentity *KeyEncryptionKeyIdentity

	// Key encryption key Url, versioned or non-versioned. Ex: https://contosovault.vault.azure.net/keys/contosokek/562a4bb76b524a1493a6afe8e536ee78
	// or https://contosovault.vault.azure.net/keys/contosokek.
	KeyEncryptionKeyURL *string
}

EncryptionSetUpdateProperties - Properties of the devcenter encryption set. These properties can be updated after the resource has been created.

func (EncryptionSetUpdateProperties) MarshalJSON

func (e EncryptionSetUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EncryptionSetUpdateProperties.

func (*EncryptionSetUpdateProperties) UnmarshalJSON

func (e *EncryptionSetUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EncryptionSetUpdateProperties.

type EncryptionSetsClient

type EncryptionSetsClient struct {
	// contains filtered or unexported fields
}

EncryptionSetsClient contains the methods for the EncryptionSets group. Don't use this type directly, use NewEncryptionSetsClient() instead.

Generated from API version 2026-01-01-preview

func NewEncryptionSetsClient

func NewEncryptionSetsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*EncryptionSetsClient, error)

NewEncryptionSetsClient creates a new instance of EncryptionSetsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*EncryptionSetsClient) BeginCreateOrUpdate

func (client *EncryptionSetsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, encryptionSetName string, body EncryptionSet, options *EncryptionSetsClientBeginCreateOrUpdateOptions) (*runtime.Poller[EncryptionSetsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a devcenter encryption set resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • encryptionSetName - The name of the devcenter encryption set.
  • body - Represents a devcenter encryption set.
  • options - EncryptionSetsClientBeginCreateOrUpdateOptions contains the optional parameters for the EncryptionSetsClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterEncryptionSets_Create.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewEncryptionSetsClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "EncryptionWestUs", armdevcenter.EncryptionSet{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Location: to.Ptr("westus"),
		Properties: &armdevcenter.EncryptionSetProperties{
			DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
			KeyEncryptionKeyIdentity: &armdevcenter.KeyEncryptionKeyIdentity{
				Type:                           to.Ptr(armdevcenter.CmkIdentityTypeUserAssigned),
				UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
			},
			KeyEncryptionKeyURL: to.Ptr("https://contosovaultwestus.vault.azure.net/keys/contosokek"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EncryptionSetsClientCreateOrUpdateResponse{
	// 	EncryptionSet: armdevcenter.EncryptionSet{
	// 		Name: to.Ptr("EncryptionWestUs"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/encryptionSets"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("westus"),
	// 		Properties: &armdevcenter.EncryptionSetProperties{
	// 			DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
	// 			KeyEncryptionKeyIdentity: &armdevcenter.KeyEncryptionKeyIdentity{
	// 				Type: to.Ptr(armdevcenter.CmkIdentityTypeUserAssigned),
	// 				UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
	// 			},
	// 			KeyEncryptionKeyURL: to.Ptr("https://contosovaultwestus.vault.azure.net/keys/contosokek"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*EncryptionSetsClient) BeginDelete

func (client *EncryptionSetsClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, encryptionSetName string, options *EncryptionSetsClientBeginDeleteOptions) (*runtime.Poller[EncryptionSetsClientDeleteResponse], error)

BeginDelete - Deletes a devcenter encryption set. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • encryptionSetName - The name of the devcenter encryption set.
  • options - EncryptionSetsClientBeginDeleteOptions contains the optional parameters for the EncryptionSetsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterEncryptionSets_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewEncryptionSetsClient().BeginDelete(ctx, "rg1", "Contoso", "EncryptionWestUs", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*EncryptionSetsClient) BeginUpdate

func (client *EncryptionSetsClient) BeginUpdate(ctx context.Context, resourceGroupName string, devCenterName string, encryptionSetName string, body EncryptionSetUpdate, options *EncryptionSetsClientBeginUpdateOptions) (*runtime.Poller[EncryptionSetsClientUpdateResponse], error)

BeginUpdate - Partially updates a devcenter encryption set. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • encryptionSetName - The name of the devcenter encryption set.
  • body - Updatable devcenter encryption set properties.
  • options - EncryptionSetsClientBeginUpdateOptions contains the optional parameters for the EncryptionSetsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterEncryptionSets_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewEncryptionSetsClient().BeginUpdate(ctx, "rg1", "Contoso", "EncryptionWestUs", armdevcenter.EncryptionSetUpdate{
		Properties: &armdevcenter.EncryptionSetUpdateProperties{
			DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EncryptionSetsClientUpdateResponse{
	// 	EncryptionSet: armdevcenter.EncryptionSet{
	// 		Name: to.Ptr("EncryptionWestUs"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/encryptionSets"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("westus"),
	// 		Properties: &armdevcenter.EncryptionSetProperties{
	// 			DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
	// 			KeyEncryptionKeyIdentity: &armdevcenter.KeyEncryptionKeyIdentity{
	// 				Type: to.Ptr(armdevcenter.CmkIdentityTypeUserAssigned),
	// 				UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
	// 			},
	// 			KeyEncryptionKeyURL: to.Ptr("https://contosovault.vault.azure.net/keys/contosokekwestus"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*EncryptionSetsClient) Get

func (client *EncryptionSetsClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, encryptionSetName string, options *EncryptionSetsClientGetOptions) (EncryptionSetsClientGetResponse, error)

Get - Gets a devcenter encryption set. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • encryptionSetName - The name of the devcenter encryption set.
  • options - EncryptionSetsClientGetOptions contains the optional parameters for the EncryptionSetsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterEncryptionSets_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEncryptionSetsClient().Get(ctx, "rg1", "Contoso", "EncryptionWestUs", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EncryptionSetsClientGetResponse{
	// 	EncryptionSet: armdevcenter.EncryptionSet{
	// 		Name: to.Ptr("EncryptionWestUs"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/encryptionSets"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("westus"),
	// 		Properties: &armdevcenter.EncryptionSetProperties{
	// 			DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
	// 			KeyEncryptionKeyIdentity: &armdevcenter.KeyEncryptionKeyIdentity{
	// 				Type: to.Ptr(armdevcenter.CmkIdentityTypeUserAssigned),
	// 				UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
	// 			},
	// 			KeyEncryptionKeyURL: to.Ptr("https://contosovaultwestus.vault.azure.net/keys/contosokek"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*EncryptionSetsClient) NewListPager

func (client *EncryptionSetsClient) NewListPager(resourceGroupName string, devCenterName string, options *EncryptionSetsClientListOptions) *runtime.Pager[EncryptionSetsClientListResponse]

NewListPager - Lists all encryption sets in the devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - EncryptionSetsClientListOptions contains the optional parameters for the EncryptionSetsClient.NewListPager method.
Example

Generated from example definition: 2026-01-01-preview/DevCenterEncryptionSets_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewEncryptionSetsClient().NewListPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.EncryptionSetsClientListResponse{
		// 	EncryptionSetListResult: armdevcenter.EncryptionSetListResult{
		// 		Value: []*armdevcenter.EncryptionSet{
		// 			{
		// 				Name: to.Ptr("EncryptionWestUs"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/encryptionSets"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/encryptionSets/EncryptionWestUs"),
		// 				Identity: &armdevcenter.ManagedServiceIdentity{
		// 					Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
		// 					UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
		// 						"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
		// 							ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
		// 							PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
		// 						},
		// 					},
		// 				},
		// 				Location: to.Ptr("westus"),
		// 				Properties: &armdevcenter.EncryptionSetProperties{
		// 					DevboxDisksEncryptionEnableStatus: to.Ptr(armdevcenter.DevboxDisksEncryptionEnableStatusEnabled),
		// 					KeyEncryptionKeyIdentity: &armdevcenter.KeyEncryptionKeyIdentity{
		// 						Type: to.Ptr(armdevcenter.CmkIdentityTypeUserAssigned),
		// 						UserAssignedIdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
		// 					},
		// 					KeyEncryptionKeyURL: to.Ptr("https://contosovaultwestus.vault.azure.net/keys/contosokek"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type EncryptionSetsClientBeginCreateOrUpdateOptions

type EncryptionSetsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

EncryptionSetsClientBeginCreateOrUpdateOptions contains the optional parameters for the EncryptionSetsClient.BeginCreateOrUpdate method.

type EncryptionSetsClientBeginDeleteOptions

type EncryptionSetsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

EncryptionSetsClientBeginDeleteOptions contains the optional parameters for the EncryptionSetsClient.BeginDelete method.

type EncryptionSetsClientBeginUpdateOptions

type EncryptionSetsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

EncryptionSetsClientBeginUpdateOptions contains the optional parameters for the EncryptionSetsClient.BeginUpdate method.

type EncryptionSetsClientCreateOrUpdateResponse

type EncryptionSetsClientCreateOrUpdateResponse struct {
	// Represents a devcenter encryption set resource.
	EncryptionSet
}

EncryptionSetsClientCreateOrUpdateResponse contains the response from method EncryptionSetsClient.BeginCreateOrUpdate.

type EncryptionSetsClientDeleteResponse

type EncryptionSetsClientDeleteResponse struct {
}

EncryptionSetsClientDeleteResponse contains the response from method EncryptionSetsClient.BeginDelete.

type EncryptionSetsClientGetOptions

type EncryptionSetsClientGetOptions struct {
}

EncryptionSetsClientGetOptions contains the optional parameters for the EncryptionSetsClient.Get method.

type EncryptionSetsClientGetResponse

type EncryptionSetsClientGetResponse struct {
	// Represents a devcenter encryption set resource.
	EncryptionSet
}

EncryptionSetsClientGetResponse contains the response from method EncryptionSetsClient.Get.

type EncryptionSetsClientListOptions

type EncryptionSetsClientListOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

EncryptionSetsClientListOptions contains the optional parameters for the EncryptionSetsClient.NewListPager method.

type EncryptionSetsClientListResponse

type EncryptionSetsClientListResponse struct {
	// Paged collection of DevCenterEncryptionSet items
	EncryptionSetListResult
}

EncryptionSetsClientListResponse contains the response from method EncryptionSetsClient.NewListPager.

type EncryptionSetsClientUpdateResponse

type EncryptionSetsClientUpdateResponse struct {
	// Represents a devcenter encryption set resource.
	EncryptionSet
}

EncryptionSetsClientUpdateResponse contains the response from method EncryptionSetsClient.BeginUpdate.

type EndpointDependency

type EndpointDependency struct {
	// READ-ONLY; Human-readable supplemental information about the dependency and when it is applicable.
	Description *string

	// READ-ONLY; The domain name of the dependency. Domain names may be fully qualified or may contain a * wildcard.
	DomainName *string

	// READ-ONLY; The list of connection details for this endpoint.
	EndpointDetails []*EndpointDetail
}

EndpointDependency - A domain name and connection details used to access a dependency.

func (EndpointDependency) MarshalJSON

func (e EndpointDependency) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EndpointDependency.

func (*EndpointDependency) UnmarshalJSON

func (e *EndpointDependency) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EndpointDependency.

type EndpointDetail

type EndpointDetail struct {
	// READ-ONLY; The port an endpoint is connected to.
	Port *int32
}

EndpointDetail - Details about the connection between the Batch service and the endpoint.

func (EndpointDetail) MarshalJSON

func (e EndpointDetail) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EndpointDetail.

func (*EndpointDetail) UnmarshalJSON

func (e *EndpointDetail) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EndpointDetail.

type EnvironmentDefinition

type EnvironmentDefinition struct {
	// Environment definition properties.
	Properties *EnvironmentDefinitionProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

EnvironmentDefinition - Represents an environment definition catalog item.

func (EnvironmentDefinition) MarshalJSON

func (e EnvironmentDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentDefinition.

func (*EnvironmentDefinition) UnmarshalJSON

func (e *EnvironmentDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentDefinition.

type EnvironmentDefinitionListResult

type EnvironmentDefinitionListResult struct {
	// READ-ONLY; The EnvironmentDefinition items on this page
	Value []*EnvironmentDefinition

	// The link to the next page of items
	NextLink *string
}

EnvironmentDefinitionListResult - Paged collection of EnvironmentDefinition items

func (EnvironmentDefinitionListResult) MarshalJSON

func (e EnvironmentDefinitionListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentDefinitionListResult.

func (*EnvironmentDefinitionListResult) UnmarshalJSON

func (e *EnvironmentDefinitionListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentDefinitionListResult.

type EnvironmentDefinitionParameter

type EnvironmentDefinitionParameter struct {
	// READ-ONLY; Description of the parameter.
	Description *string

	// READ-ONLY; Unique ID of the parameter.
	ID *string

	// READ-ONLY; Display name of the parameter.
	Name *string

	// READ-ONLY; Whether or not this parameter is read-only. If true, default should have a value.
	ReadOnly *bool

	// READ-ONLY; Whether or not this parameter is required.
	Required *bool

	// READ-ONLY; A string of one of the basic JSON types (number, integer, array, object, boolean, string).
	Type *ParameterType
}

EnvironmentDefinitionParameter - Properties of an Environment Definition parameter.

func (EnvironmentDefinitionParameter) MarshalJSON

func (e EnvironmentDefinitionParameter) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentDefinitionParameter.

func (*EnvironmentDefinitionParameter) UnmarshalJSON

func (e *EnvironmentDefinitionParameter) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentDefinitionParameter.

type EnvironmentDefinitionProperties

type EnvironmentDefinitionProperties struct {
	// READ-ONLY; A short description of the environment definition.
	Description *string

	// READ-ONLY; Input parameters passed to an environment.
	Parameters []*EnvironmentDefinitionParameter

	// READ-ONLY; Path to the Environment Definition entrypoint file.
	TemplatePath *string

	// READ-ONLY; Validation status for the environment definition.
	ValidationStatus *CatalogResourceValidationStatus
}

EnvironmentDefinitionProperties - Properties of an environment definition.

func (EnvironmentDefinitionProperties) MarshalJSON

func (e EnvironmentDefinitionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentDefinitionProperties.

func (*EnvironmentDefinitionProperties) UnmarshalJSON

func (e *EnvironmentDefinitionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentDefinitionProperties.

type EnvironmentDefinitionsClient

type EnvironmentDefinitionsClient struct {
	// contains filtered or unexported fields
}

EnvironmentDefinitionsClient contains the methods for the EnvironmentDefinitions group. Don't use this type directly, use NewEnvironmentDefinitionsClient() instead.

Generated from API version 2026-01-01-preview

func NewEnvironmentDefinitionsClient

func NewEnvironmentDefinitionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*EnvironmentDefinitionsClient, error)

NewEnvironmentDefinitionsClient creates a new instance of EnvironmentDefinitionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*EnvironmentDefinitionsClient) Get

func (client *EnvironmentDefinitionsClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, environmentDefinitionName string, options *EnvironmentDefinitionsClientGetOptions) (EnvironmentDefinitionsClientGetResponse, error)

Get - Gets an environment definition from the catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • environmentDefinitionName - The name of the Environment Definition.
  • options - EnvironmentDefinitionsClientGetOptions contains the optional parameters for the EnvironmentDefinitionsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentDefinitions_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentDefinitionsClient().Get(ctx, "rg1", "Contoso", "myCatalog", "myEnvironmentDefinition", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentDefinitionsClientGetResponse{
	// 	EnvironmentDefinition: armdevcenter.EnvironmentDefinition{
	// 		Name: to.Ptr("myEnvironmentDefinition"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/environmentDefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition"),
	// 		Properties: &armdevcenter.EnvironmentDefinitionProperties{
	// 			Description: to.Ptr("My sample environment definition."),
	// 			Parameters: []*armdevcenter.EnvironmentDefinitionParameter{
	// 				{
	// 					Name: to.Ptr("Function App Runtime"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeString),
	// 					ID: to.Ptr("functionAppRuntime"),
	// 					Required: to.Ptr(true),
	// 				},
	// 				{
	// 					Name: to.Ptr("Storage Account Type"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeString),
	// 					ID: to.Ptr("storageAccountType"),
	// 					Required: to.Ptr(true),
	// 				},
	// 				{
	// 					Name: to.Ptr("HTTPS only"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeBoolean),
	// 					ID: to.Ptr("httpsOnly"),
	// 					ReadOnly: to.Ptr(true),
	// 					Required: to.Ptr(true),
	// 				},
	// 			},
	// 			TemplatePath: to.Ptr("azuredeploy.json"),
	// 			ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*EnvironmentDefinitionsClient) GetByProjectCatalog

func (client *EnvironmentDefinitionsClient) GetByProjectCatalog(ctx context.Context, resourceGroupName string, projectName string, catalogName string, environmentDefinitionName string, options *EnvironmentDefinitionsClientGetByProjectCatalogOptions) (EnvironmentDefinitionsClientGetByProjectCatalogResponse, error)

GetByProjectCatalog - Gets an environment definition from the catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • environmentDefinitionName - The name of the Environment Definition.
  • options - EnvironmentDefinitionsClientGetByProjectCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.GetByProjectCatalog method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentDefinitions_GetByProjectCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentDefinitionsClient().GetByProjectCatalog(ctx, "rg1", "DevProject", "myCatalog", "myEnvironmentDefinition", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentDefinitionsClientGetByProjectCatalogResponse{
	// 	EnvironmentDefinition: armdevcenter.EnvironmentDefinition{
	// 		Name: to.Ptr("myEnvironmentDefinition"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/environmentDefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition"),
	// 		Properties: &armdevcenter.EnvironmentDefinitionProperties{
	// 			Description: to.Ptr("My sample environment definition."),
	// 			Parameters: []*armdevcenter.EnvironmentDefinitionParameter{
	// 				{
	// 					Name: to.Ptr("Function App Runtime"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeString),
	// 					ID: to.Ptr("functionAppRuntime"),
	// 					Required: to.Ptr(true),
	// 				},
	// 				{
	// 					Name: to.Ptr("Storage Account Type"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeString),
	// 					ID: to.Ptr("storageAccountType"),
	// 					Required: to.Ptr(true),
	// 				},
	// 				{
	// 					Name: to.Ptr("HTTPS only"),
	// 					Type: to.Ptr(armdevcenter.ParameterTypeBoolean),
	// 					ID: to.Ptr("httpsOnly"),
	// 					ReadOnly: to.Ptr(true),
	// 					Required: to.Ptr(true),
	// 				},
	// 			},
	// 			TemplatePath: to.Ptr("azuredeploy.json"),
	// 			ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*EnvironmentDefinitionsClient) GetErrorDetails

func (client *EnvironmentDefinitionsClient) GetErrorDetails(ctx context.Context, resourceGroupName string, devCenterName string, catalogName string, environmentDefinitionName string, options *EnvironmentDefinitionsClientGetErrorDetailsOptions) (EnvironmentDefinitionsClientGetErrorDetailsResponse, error)

GetErrorDetails - Gets Environment Definition error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • environmentDefinitionName - The name of the Environment Definition.
  • options - EnvironmentDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the EnvironmentDefinitionsClient.GetErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentDefinitions_GetErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentDefinitionsClient().GetErrorDetails(ctx, "rg1", "Contoso", "myCatalog", "myEnvironmentDefinition", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentDefinitionsClientGetErrorDetailsResponse{
	// 	CatalogResourceValidationErrorDetails: armdevcenter.CatalogResourceValidationErrorDetails{
	// 		Errors: []*armdevcenter.CatalogErrorDetails{
	// 			{
	// 				Code: to.Ptr("ParameterValueInvalid"),
	// 				Message: to.Ptr("Expected parameter value for 'InstanceCount' to be integer but found the string 'test'."),
	// 			},
	// 		},
	// 	},
	// }
}

func (*EnvironmentDefinitionsClient) NewListByCatalogPager

func (client *EnvironmentDefinitionsClient) NewListByCatalogPager(resourceGroupName string, devCenterName string, catalogName string, options *EnvironmentDefinitionsClientListByCatalogOptions) *runtime.Pager[EnvironmentDefinitionsClientListByCatalogResponse]

NewListByCatalogPager - List environment definitions in the catalog.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • catalogName - The name of the Catalog.
  • options - EnvironmentDefinitionsClientListByCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.NewListByCatalogPager method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentDefinitions_ListByCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewEnvironmentDefinitionsClient().NewListByCatalogPager("rg1", "Contoso", "myCatalog", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.EnvironmentDefinitionsClientListByCatalogResponse{
		// 	EnvironmentDefinitionListResult: armdevcenter.EnvironmentDefinitionListResult{
		// 		Value: []*armdevcenter.EnvironmentDefinition{
		// 			{
		// 				Name: to.Ptr("myEnvironmentDefinition"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/catalogs/environmentDefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition"),
		// 				Properties: &armdevcenter.EnvironmentDefinitionProperties{
		// 					Description: to.Ptr("My sample environment definition."),
		// 					Parameters: []*armdevcenter.EnvironmentDefinitionParameter{
		// 						{
		// 							Name: to.Ptr("Function App Runtime"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeString),
		// 							ID: to.Ptr("functionAppRuntime"),
		// 							Required: to.Ptr(true),
		// 						},
		// 						{
		// 							Name: to.Ptr("Storage Account Type"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeString),
		// 							ID: to.Ptr("storageAccountType"),
		// 							Required: to.Ptr(true),
		// 						},
		// 						{
		// 							Name: to.Ptr("HTTPS only"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeBoolean),
		// 							ID: to.Ptr("httpsOnly"),
		// 							ReadOnly: to.Ptr(true),
		// 							Required: to.Ptr(true),
		// 						},
		// 					},
		// 					TemplatePath: to.Ptr("azuredeploy.json"),
		// 					ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*EnvironmentDefinitionsClient) NewListByProjectCatalogPager

NewListByProjectCatalogPager - Lists the environment definitions in this project catalog.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - EnvironmentDefinitionsClientListByProjectCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.NewListByProjectCatalogPager method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentDefinitions_ListByProjectCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewEnvironmentDefinitionsClient().NewListByProjectCatalogPager("rg1", "DevProject", "myCatalog", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.EnvironmentDefinitionsClientListByProjectCatalogResponse{
		// 	EnvironmentDefinitionListResult: armdevcenter.EnvironmentDefinitionListResult{
		// 		Value: []*armdevcenter.EnvironmentDefinition{
		// 			{
		// 				Name: to.Ptr("myEnvironmentDefinition"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/environmentDefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/myCatalog/environmentDefinitions/myEnvironmentDefinition"),
		// 				Properties: &armdevcenter.EnvironmentDefinitionProperties{
		// 					Description: to.Ptr("My sample environment definition."),
		// 					Parameters: []*armdevcenter.EnvironmentDefinitionParameter{
		// 						{
		// 							Name: to.Ptr("Function App Runtime"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeString),
		// 							ID: to.Ptr("functionAppRuntime"),
		// 							Required: to.Ptr(true),
		// 						},
		// 						{
		// 							Name: to.Ptr("Storage Account Type"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeString),
		// 							ID: to.Ptr("storageAccountType"),
		// 							Required: to.Ptr(true),
		// 						},
		// 						{
		// 							Name: to.Ptr("HTTPS only"),
		// 							Type: to.Ptr(armdevcenter.ParameterTypeBoolean),
		// 							ID: to.Ptr("httpsOnly"),
		// 							ReadOnly: to.Ptr(true),
		// 							Required: to.Ptr(true),
		// 						},
		// 					},
		// 					TemplatePath: to.Ptr("azuredeploy.json"),
		// 					ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type EnvironmentDefinitionsClientGetByProjectCatalogOptions

type EnvironmentDefinitionsClientGetByProjectCatalogOptions struct {
}

EnvironmentDefinitionsClientGetByProjectCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.GetByProjectCatalog method.

type EnvironmentDefinitionsClientGetByProjectCatalogResponse

type EnvironmentDefinitionsClientGetByProjectCatalogResponse struct {
	// Represents an environment definition catalog item.
	EnvironmentDefinition
}

EnvironmentDefinitionsClientGetByProjectCatalogResponse contains the response from method EnvironmentDefinitionsClient.GetByProjectCatalog.

type EnvironmentDefinitionsClientGetErrorDetailsOptions

type EnvironmentDefinitionsClientGetErrorDetailsOptions struct {
}

EnvironmentDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the EnvironmentDefinitionsClient.GetErrorDetails method.

type EnvironmentDefinitionsClientGetErrorDetailsResponse

type EnvironmentDefinitionsClientGetErrorDetailsResponse struct {
	// List of validator error details. Populated when changes are made to the resource or its dependent resources that impact
	// the validity of the Catalog resource.
	CatalogResourceValidationErrorDetails
}

EnvironmentDefinitionsClientGetErrorDetailsResponse contains the response from method EnvironmentDefinitionsClient.GetErrorDetails.

type EnvironmentDefinitionsClientGetOptions

type EnvironmentDefinitionsClientGetOptions struct {
}

EnvironmentDefinitionsClientGetOptions contains the optional parameters for the EnvironmentDefinitionsClient.Get method.

type EnvironmentDefinitionsClientGetResponse

type EnvironmentDefinitionsClientGetResponse struct {
	// Represents an environment definition catalog item.
	EnvironmentDefinition
}

EnvironmentDefinitionsClientGetResponse contains the response from method EnvironmentDefinitionsClient.Get.

type EnvironmentDefinitionsClientListByCatalogOptions

type EnvironmentDefinitionsClientListByCatalogOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

EnvironmentDefinitionsClientListByCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.NewListByCatalogPager method.

type EnvironmentDefinitionsClientListByCatalogResponse

type EnvironmentDefinitionsClientListByCatalogResponse struct {
	// Paged collection of EnvironmentDefinition items
	EnvironmentDefinitionListResult
}

EnvironmentDefinitionsClientListByCatalogResponse contains the response from method EnvironmentDefinitionsClient.NewListByCatalogPager.

type EnvironmentDefinitionsClientListByProjectCatalogOptions

type EnvironmentDefinitionsClientListByProjectCatalogOptions struct {
}

EnvironmentDefinitionsClientListByProjectCatalogOptions contains the optional parameters for the EnvironmentDefinitionsClient.NewListByProjectCatalogPager method.

type EnvironmentDefinitionsClientListByProjectCatalogResponse

type EnvironmentDefinitionsClientListByProjectCatalogResponse struct {
	// Paged collection of EnvironmentDefinition items
	EnvironmentDefinitionListResult
}

EnvironmentDefinitionsClientListByProjectCatalogResponse contains the response from method EnvironmentDefinitionsClient.NewListByProjectCatalogPager.

type EnvironmentRole

type EnvironmentRole struct {
	// READ-ONLY; This is a description of the Role Assignment.
	Description *string

	// READ-ONLY; The common name of the Role Assignment. This is a descriptive name such as 'AcrPush'.
	RoleName *string
}

EnvironmentRole - A role that can be assigned to a user.

func (EnvironmentRole) MarshalJSON

func (e EnvironmentRole) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentRole.

func (*EnvironmentRole) UnmarshalJSON

func (e *EnvironmentRole) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentRole.

type EnvironmentType

type EnvironmentType struct {
	// Properties of an environment type.
	Properties *EnvironmentTypeProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

EnvironmentType - Represents an environment type.

func (EnvironmentType) MarshalJSON

func (e EnvironmentType) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentType.

func (*EnvironmentType) UnmarshalJSON

func (e *EnvironmentType) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentType.

type EnvironmentTypeEnableStatus

type EnvironmentTypeEnableStatus string

EnvironmentTypeEnableStatus - Indicates whether the environment type is either enabled or disabled.

const (
	// EnvironmentTypeEnableStatusDisabled - Environment type is disabled.
	EnvironmentTypeEnableStatusDisabled EnvironmentTypeEnableStatus = "Disabled"
	// EnvironmentTypeEnableStatusEnabled - Environment type is enabled.
	EnvironmentTypeEnableStatusEnabled EnvironmentTypeEnableStatus = "Enabled"
)

func PossibleEnvironmentTypeEnableStatusValues

func PossibleEnvironmentTypeEnableStatusValues() []EnvironmentTypeEnableStatus

PossibleEnvironmentTypeEnableStatusValues returns the possible values for the EnvironmentTypeEnableStatus const type.

type EnvironmentTypeListResult

type EnvironmentTypeListResult struct {
	// READ-ONLY; The EnvironmentType items on this page
	Value []*EnvironmentType

	// The link to the next page of items
	NextLink *string
}

EnvironmentTypeListResult - Paged collection of EnvironmentType items

func (EnvironmentTypeListResult) MarshalJSON

func (e EnvironmentTypeListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentTypeListResult.

func (*EnvironmentTypeListResult) UnmarshalJSON

func (e *EnvironmentTypeListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentTypeListResult.

type EnvironmentTypeProperties

type EnvironmentTypeProperties struct {
	// The display name of the environment type.
	DisplayName *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

EnvironmentTypeProperties - Properties of an environment type.

func (EnvironmentTypeProperties) MarshalJSON

func (e EnvironmentTypeProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentTypeProperties.

func (*EnvironmentTypeProperties) UnmarshalJSON

func (e *EnvironmentTypeProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentTypeProperties.

type EnvironmentTypeUpdate

type EnvironmentTypeUpdate struct {
	// Properties of an environment type to be updated.
	Properties *EnvironmentTypeUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

EnvironmentTypeUpdate - The environment type for partial update. Properties not provided in the update request will not be changed.

func (EnvironmentTypeUpdate) MarshalJSON

func (e EnvironmentTypeUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentTypeUpdate.

func (*EnvironmentTypeUpdate) UnmarshalJSON

func (e *EnvironmentTypeUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentTypeUpdate.

type EnvironmentTypeUpdateProperties

type EnvironmentTypeUpdateProperties struct {
	// The display name of the environment type.
	DisplayName *string
}

EnvironmentTypeUpdateProperties - Properties of an environment type. These properties can be updated after the resource has been created.

func (EnvironmentTypeUpdateProperties) MarshalJSON

func (e EnvironmentTypeUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type EnvironmentTypeUpdateProperties.

func (*EnvironmentTypeUpdateProperties) UnmarshalJSON

func (e *EnvironmentTypeUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type EnvironmentTypeUpdateProperties.

type EnvironmentTypesClient

type EnvironmentTypesClient struct {
	// contains filtered or unexported fields
}

EnvironmentTypesClient contains the methods for the EnvironmentTypes group. Don't use this type directly, use NewEnvironmentTypesClient() instead.

Generated from API version 2026-01-01-preview

func NewEnvironmentTypesClient

func NewEnvironmentTypesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*EnvironmentTypesClient, error)

NewEnvironmentTypesClient creates a new instance of EnvironmentTypesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*EnvironmentTypesClient) CreateOrUpdate

func (client *EnvironmentTypesClient) CreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, environmentTypeName string, body EnvironmentType, options *EnvironmentTypesClientCreateOrUpdateOptions) (EnvironmentTypesClientCreateOrUpdateResponse, error)

CreateOrUpdate - Creates or updates an environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • environmentTypeName - The name of the environment type.
  • body - Represents an Environment Type.
  • options - EnvironmentTypesClientCreateOrUpdateOptions contains the optional parameters for the EnvironmentTypesClient.CreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentTypes_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentTypesClient().CreateOrUpdate(ctx, "rg1", "Contoso", "DevTest", armdevcenter.EnvironmentType{
		Properties: &armdevcenter.EnvironmentTypeProperties{
			DisplayName: to.Ptr("Dev"),
		},
		Tags: map[string]*string{
			"Owner": to.Ptr("superuser"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentTypesClientCreateOrUpdateResponse{
	// 	EnvironmentType: armdevcenter.EnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/environmenttypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest"),
	// 		Properties: &armdevcenter.EnvironmentTypeProperties{
	// 			DisplayName: to.Ptr("Dev"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"Owner": to.Ptr("superuser"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

func (*EnvironmentTypesClient) Delete

func (client *EnvironmentTypesClient) Delete(ctx context.Context, resourceGroupName string, devCenterName string, environmentTypeName string, options *EnvironmentTypesClientDeleteOptions) (EnvironmentTypesClientDeleteResponse, error)

Delete - Deletes an environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • environmentTypeName - The name of the environment type.
  • options - EnvironmentTypesClientDeleteOptions contains the optional parameters for the EnvironmentTypesClient.Delete method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentTypes_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentTypesClient().Delete(ctx, "rg1", "Contoso", "DevTest", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentTypesClientDeleteResponse{
	// }
}

func (*EnvironmentTypesClient) Get

func (client *EnvironmentTypesClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, environmentTypeName string, options *EnvironmentTypesClientGetOptions) (EnvironmentTypesClientGetResponse, error)

Get - Gets an environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • environmentTypeName - The name of the environment type.
  • options - EnvironmentTypesClientGetOptions contains the optional parameters for the EnvironmentTypesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentTypes_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentTypesClient().Get(ctx, "rg1", "Contoso", "DevTest", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentTypesClientGetResponse{
	// 	EnvironmentType: armdevcenter.EnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/environmenttypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest"),
	// 		Properties: &armdevcenter.EnvironmentTypeProperties{
	// 			DisplayName: to.Ptr("Dev"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("RnD"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

func (*EnvironmentTypesClient) NewListByDevCenterPager

func (client *EnvironmentTypesClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *EnvironmentTypesClientListByDevCenterOptions) *runtime.Pager[EnvironmentTypesClientListByDevCenterResponse]

NewListByDevCenterPager - Lists environment types for the devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - EnvironmentTypesClientListByDevCenterOptions contains the optional parameters for the EnvironmentTypesClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentTypes_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewEnvironmentTypesClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.EnvironmentTypesClientListByDevCenterResponse{
		// 	EnvironmentTypeListResult: armdevcenter.EnvironmentTypeListResult{
		// 		Value: []*armdevcenter.EnvironmentType{
		// 			{
		// 				Name: to.Ptr("DevTest"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/environmenttypes"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest"),
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1@contoso.com"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1@contoso.com"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCenter": to.Ptr("RnD"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*EnvironmentTypesClient) Update

func (client *EnvironmentTypesClient) Update(ctx context.Context, resourceGroupName string, devCenterName string, environmentTypeName string, body EnvironmentTypeUpdate, options *EnvironmentTypesClientUpdateOptions) (EnvironmentTypesClientUpdateResponse, error)

Update - Partially updates an environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • environmentTypeName - The name of the environment type.
  • body - Updatable environment type properties.
  • options - EnvironmentTypesClientUpdateOptions contains the optional parameters for the EnvironmentTypesClient.Update method.
Example

Generated from example definition: 2026-01-01-preview/EnvironmentTypes_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewEnvironmentTypesClient().Update(ctx, "rg1", "Contoso", "DevTest", armdevcenter.EnvironmentTypeUpdate{
		Properties: &armdevcenter.EnvironmentTypeUpdateProperties{
			DisplayName: to.Ptr("Dev"),
		},
		Tags: map[string]*string{
			"Owner": to.Ptr("superuser"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.EnvironmentTypesClientUpdateResponse{
	// 	EnvironmentType: armdevcenter.EnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/environmenttypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/environmentTypes/DevTest"),
	// 		Properties: &armdevcenter.EnvironmentTypeProperties{
	// 			DisplayName: to.Ptr("Dev"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"Owner": to.Ptr("superuser"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

type EnvironmentTypesClientCreateOrUpdateOptions

type EnvironmentTypesClientCreateOrUpdateOptions struct {
}

EnvironmentTypesClientCreateOrUpdateOptions contains the optional parameters for the EnvironmentTypesClient.CreateOrUpdate method.

type EnvironmentTypesClientCreateOrUpdateResponse

type EnvironmentTypesClientCreateOrUpdateResponse struct {
	// Represents an environment type.
	EnvironmentType
}

EnvironmentTypesClientCreateOrUpdateResponse contains the response from method EnvironmentTypesClient.CreateOrUpdate.

type EnvironmentTypesClientDeleteOptions

type EnvironmentTypesClientDeleteOptions struct {
}

EnvironmentTypesClientDeleteOptions contains the optional parameters for the EnvironmentTypesClient.Delete method.

type EnvironmentTypesClientDeleteResponse

type EnvironmentTypesClientDeleteResponse struct {
}

EnvironmentTypesClientDeleteResponse contains the response from method EnvironmentTypesClient.Delete.

type EnvironmentTypesClientGetOptions

type EnvironmentTypesClientGetOptions struct {
}

EnvironmentTypesClientGetOptions contains the optional parameters for the EnvironmentTypesClient.Get method.

type EnvironmentTypesClientGetResponse

type EnvironmentTypesClientGetResponse struct {
	// Represents an environment type.
	EnvironmentType
}

EnvironmentTypesClientGetResponse contains the response from method EnvironmentTypesClient.Get.

type EnvironmentTypesClientListByDevCenterOptions

type EnvironmentTypesClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

EnvironmentTypesClientListByDevCenterOptions contains the optional parameters for the EnvironmentTypesClient.NewListByDevCenterPager method.

type EnvironmentTypesClientListByDevCenterResponse

type EnvironmentTypesClientListByDevCenterResponse struct {
	// Paged collection of EnvironmentType items
	EnvironmentTypeListResult
}

EnvironmentTypesClientListByDevCenterResponse contains the response from method EnvironmentTypesClient.NewListByDevCenterPager.

type EnvironmentTypesClientUpdateOptions

type EnvironmentTypesClientUpdateOptions struct {
}

EnvironmentTypesClientUpdateOptions contains the optional parameters for the EnvironmentTypesClient.Update method.

type EnvironmentTypesClientUpdateResponse

type EnvironmentTypesClientUpdateResponse struct {
	// Represents an environment type.
	EnvironmentType
}

EnvironmentTypesClientUpdateResponse contains the response from method EnvironmentTypesClient.Update.

type ErrorAdditionalInfo

type ErrorAdditionalInfo struct {
	// READ-ONLY; The additional info.
	Info any

	// READ-ONLY; The additional info type.
	Type *string
}

ErrorAdditionalInfo - The resource management error additional info.

func (ErrorAdditionalInfo) MarshalJSON

func (e ErrorAdditionalInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ErrorAdditionalInfo.

func (*ErrorAdditionalInfo) UnmarshalJSON

func (e *ErrorAdditionalInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ErrorAdditionalInfo.

type ErrorDetail

type ErrorDetail struct {
	// READ-ONLY; The error additional info.
	AdditionalInfo []*ErrorAdditionalInfo

	// READ-ONLY; The error code.
	Code *string

	// READ-ONLY; The error details.
	Details []*ErrorDetail

	// READ-ONLY; The error message.
	Message *string

	// READ-ONLY; The error target.
	Target *string
}

ErrorDetail - The error detail.

func (ErrorDetail) MarshalJSON

func (e ErrorDetail) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ErrorDetail.

func (*ErrorDetail) UnmarshalJSON

func (e *ErrorDetail) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ErrorDetail.

type FeatureState

type FeatureState struct {
	// Indicates the default status of the feature.
	DefaultStatus *FeatureStatus

	// The default values of the feature.
	DefaultValues []*DefaultValue

	// Indicates whether the feature's status, Enabled or Disabled, is configurable at the Project scope.
	StatusModifiable *FeatureStateModifiable

	// Indicates whether the feature values are configurable at the Project scope.
	ValuesModifiable *FeatureStateModifiable
}

FeatureState - Feature state.

func (FeatureState) MarshalJSON

func (f FeatureState) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type FeatureState.

func (*FeatureState) UnmarshalJSON

func (f *FeatureState) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type FeatureState.

type FeatureStateModifiable

type FeatureStateModifiable string

FeatureStateModifiable - Feature enablement status.

const (
	// FeatureStateModifiableModifiable - Feature is modifiable.
	FeatureStateModifiableModifiable FeatureStateModifiable = "Modifiable"
	// FeatureStateModifiableNotModifiable - Feature is not modifiable.
	FeatureStateModifiableNotModifiable FeatureStateModifiable = "NotModifiable"
)

func PossibleFeatureStateModifiableValues

func PossibleFeatureStateModifiableValues() []FeatureStateModifiable

PossibleFeatureStateModifiableValues returns the possible values for the FeatureStateModifiable const type.

type FeatureStatus

type FeatureStatus string

FeatureStatus - Feature status.

const (
	// FeatureStatusAutoDeploy - Auto Deploy feature status.
	FeatureStatusAutoDeploy FeatureStatus = "AutoDeploy"
	// FeatureStatusDisabled - Feature is disabled.
	FeatureStatusDisabled FeatureStatus = "Disabled"
	// FeatureStatusEnabled - Feature is enabled.
	FeatureStatusEnabled FeatureStatus = "Enabled"
)

func PossibleFeatureStatusValues

func PossibleFeatureStatusValues() []FeatureStatus

PossibleFeatureStatusValues returns the possible values for the FeatureStatus const type.

type GalleriesClient

type GalleriesClient struct {
	// contains filtered or unexported fields
}

GalleriesClient contains the methods for the Galleries group. Don't use this type directly, use NewGalleriesClient() instead.

Generated from API version 2026-01-01-preview

func NewGalleriesClient

func NewGalleriesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*GalleriesClient, error)

NewGalleriesClient creates a new instance of GalleriesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*GalleriesClient) BeginCreateOrUpdate

func (client *GalleriesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, galleryName string, body Gallery, options *GalleriesClientBeginCreateOrUpdateOptions) (*runtime.Poller[GalleriesClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a gallery. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • body - Represents a gallery.
  • options - GalleriesClientBeginCreateOrUpdateOptions contains the optional parameters for the GalleriesClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Galleries_Create.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewGalleriesClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "StandardGallery", armdevcenter.Gallery{
		Properties: &armdevcenter.GalleryProperties{
			GalleryResourceID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.GalleriesClientCreateOrUpdateResponse{
	// 	Gallery: armdevcenter.Gallery{
	// 		Name: to.Ptr("StandardGallery"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/StandardGallery"),
	// 		Properties: &armdevcenter.GalleryProperties{
	// 			GalleryResourceID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*GalleriesClient) BeginDelete

func (client *GalleriesClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, galleryName string, options *GalleriesClientBeginDeleteOptions) (*runtime.Poller[GalleriesClientDeleteResponse], error)

BeginDelete - Deletes a gallery resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • options - GalleriesClientBeginDeleteOptions contains the optional parameters for the GalleriesClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/Galleries_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewGalleriesClient().BeginDelete(ctx, "rg1", "Contoso", "StandardGallery", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*GalleriesClient) Get

func (client *GalleriesClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, galleryName string, options *GalleriesClientGetOptions) (GalleriesClientGetResponse, error)

Get - Gets a gallery. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • options - GalleriesClientGetOptions contains the optional parameters for the GalleriesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/Galleries_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewGalleriesClient().Get(ctx, "rg1", "Contoso", "StandardGallery", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.GalleriesClientGetResponse{
	// 	Gallery: armdevcenter.Gallery{
	// 		Name: to.Ptr("StandardGallery"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/StandardGallery"),
	// 		Properties: &armdevcenter.GalleryProperties{
	// 			GalleryResourceID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/StandardGallery"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*GalleriesClient) NewListByDevCenterPager

func (client *GalleriesClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *GalleriesClientListByDevCenterOptions) *runtime.Pager[GalleriesClientListByDevCenterResponse]

NewListByDevCenterPager - Lists galleries for a devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - GalleriesClientListByDevCenterOptions contains the optional parameters for the GalleriesClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/Galleries_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewGalleriesClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.GalleriesClientListByDevCenterResponse{
		// 	GalleryListResult: armdevcenter.GalleryListResult{
		// 		Value: []*armdevcenter.Gallery{
		// 			{
		// 				Name: to.Ptr("StandardGallery"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/default"),
		// 				Properties: &armdevcenter.GalleryProperties{
		// 					GalleryResourceID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/CentralGallery"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("StandardGallery"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/ImageGallery"),
		// 				Properties: &armdevcenter.GalleryProperties{
		// 					GalleryResourceID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.Compute/galleries/SharedGallery"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type GalleriesClientBeginCreateOrUpdateOptions

type GalleriesClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

GalleriesClientBeginCreateOrUpdateOptions contains the optional parameters for the GalleriesClient.BeginCreateOrUpdate method.

type GalleriesClientBeginDeleteOptions

type GalleriesClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

GalleriesClientBeginDeleteOptions contains the optional parameters for the GalleriesClient.BeginDelete method.

type GalleriesClientCreateOrUpdateResponse

type GalleriesClientCreateOrUpdateResponse struct {
	// Represents a gallery.
	Gallery
}

GalleriesClientCreateOrUpdateResponse contains the response from method GalleriesClient.BeginCreateOrUpdate.

type GalleriesClientDeleteResponse

type GalleriesClientDeleteResponse struct {
}

GalleriesClientDeleteResponse contains the response from method GalleriesClient.BeginDelete.

type GalleriesClientGetOptions

type GalleriesClientGetOptions struct {
}

GalleriesClientGetOptions contains the optional parameters for the GalleriesClient.Get method.

type GalleriesClientGetResponse

type GalleriesClientGetResponse struct {
	// Represents a gallery.
	Gallery
}

GalleriesClientGetResponse contains the response from method GalleriesClient.Get.

type GalleriesClientListByDevCenterOptions

type GalleriesClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

GalleriesClientListByDevCenterOptions contains the optional parameters for the GalleriesClient.NewListByDevCenterPager method.

type GalleriesClientListByDevCenterResponse

type GalleriesClientListByDevCenterResponse struct {
	// Paged collection of Gallery items
	GalleryListResult
}

GalleriesClientListByDevCenterResponse contains the response from method GalleriesClient.NewListByDevCenterPager.

type Gallery struct {
	// Gallery properties.
	Properties *GalleryProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Gallery - Represents a gallery.

func (Gallery) MarshalJSON

func (g Gallery) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Gallery.

func (*Gallery) UnmarshalJSON

func (g *Gallery) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Gallery.

type GalleryListResult

type GalleryListResult struct {
	// READ-ONLY; The Gallery items on this page
	Value []*Gallery

	// The link to the next page of items
	NextLink *string
}

GalleryListResult - Paged collection of Gallery items

func (GalleryListResult) MarshalJSON

func (g GalleryListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GalleryListResult.

func (*GalleryListResult) UnmarshalJSON

func (g *GalleryListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GalleryListResult.

type GalleryProperties

type GalleryProperties struct {
	// REQUIRED; The resource ID of the backing Azure Compute Gallery.
	GalleryResourceID *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

GalleryProperties - Properties of a gallery.

func (GalleryProperties) MarshalJSON

func (g GalleryProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GalleryProperties.

func (*GalleryProperties) UnmarshalJSON

func (g *GalleryProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GalleryProperties.

type GitCatalog

type GitCatalog struct {
	// Git branch.
	Branch *string

	// The folder where the catalog items can be found inside the repository.
	Path *string

	// A reference to the Key Vault secret containing a security token to authenticate to a Git repository.
	SecretIdentifier *string

	// Git URI.
	URI *string
}

GitCatalog - Properties for a Git repository catalog.

func (GitCatalog) MarshalJSON

func (g GitCatalog) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type GitCatalog.

func (*GitCatalog) UnmarshalJSON

func (g *GitCatalog) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type GitCatalog.

type HealthCheck

type HealthCheck struct {
	// READ-ONLY; Additional details about the health check or the recommended action.
	AdditionalDetails *string

	// READ-ONLY; The display name of this health check item.
	DisplayName *string

	// READ-ONLY; End time of the health check item.
	EndDateTime *time.Time

	// READ-ONLY; The type of error that occurred during this health check.
	ErrorType *string

	// READ-ONLY; The recommended action to fix the corresponding error.
	RecommendedAction *string

	// READ-ONLY; Start time of health check item.
	StartDateTime *time.Time

	// READ-ONLY; The status of the health check item.
	Status *HealthCheckStatus
}

HealthCheck - An individual health check item.

func (HealthCheck) MarshalJSON

func (h HealthCheck) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HealthCheck.

func (*HealthCheck) UnmarshalJSON

func (h *HealthCheck) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HealthCheck.

type HealthCheckStatus

type HealthCheckStatus string

HealthCheckStatus - Health check status values.

const (
	// HealthCheckStatusFailed - Failed health check status.
	HealthCheckStatusFailed HealthCheckStatus = "Failed"
	// HealthCheckStatusInformational - Informational health check status.
	HealthCheckStatusInformational HealthCheckStatus = "Informational"
	// HealthCheckStatusPassed - Passed health check status.
	HealthCheckStatusPassed HealthCheckStatus = "Passed"
	// HealthCheckStatusPending - Pending health check status.
	HealthCheckStatusPending HealthCheckStatus = "Pending"
	// HealthCheckStatusRunning - Running health check status.
	HealthCheckStatusRunning HealthCheckStatus = "Running"
	// HealthCheckStatusUnknown - Unknown health check status.
	HealthCheckStatusUnknown HealthCheckStatus = "Unknown"
	// HealthCheckStatusWarning - Warning health check status.
	HealthCheckStatusWarning HealthCheckStatus = "Warning"
)

func PossibleHealthCheckStatusValues

func PossibleHealthCheckStatusValues() []HealthCheckStatus

PossibleHealthCheckStatusValues returns the possible values for the HealthCheckStatus const type.

type HealthCheckStatusDetails

type HealthCheckStatusDetails struct {
	// Health check status details properties.
	Properties *HealthCheckStatusDetailsProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

HealthCheckStatusDetails - Health Check details.

func (HealthCheckStatusDetails) MarshalJSON

func (h HealthCheckStatusDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HealthCheckStatusDetails.

func (*HealthCheckStatusDetails) UnmarshalJSON

func (h *HealthCheckStatusDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HealthCheckStatusDetails.

type HealthCheckStatusDetailsListResult

type HealthCheckStatusDetailsListResult struct {
	// READ-ONLY; The HealthCheckStatusDetails items on this page
	Value []*HealthCheckStatusDetails

	// The link to the next page of items
	NextLink *string
}

HealthCheckStatusDetailsListResult - Paged collection of HealthCheckStatusDetails items

func (HealthCheckStatusDetailsListResult) MarshalJSON

func (h HealthCheckStatusDetailsListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HealthCheckStatusDetailsListResult.

func (*HealthCheckStatusDetailsListResult) UnmarshalJSON

func (h *HealthCheckStatusDetailsListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HealthCheckStatusDetailsListResult.

type HealthCheckStatusDetailsProperties

type HealthCheckStatusDetailsProperties struct {
	// READ-ONLY; End time of last execution of the health checks.
	EndDateTime *time.Time

	// READ-ONLY; Details for each health check item.
	HealthChecks []*HealthCheck

	// READ-ONLY; Start time of last execution of the health checks.
	StartDateTime *time.Time
}

HealthCheckStatusDetailsProperties - Health Check properties.

func (HealthCheckStatusDetailsProperties) MarshalJSON

func (h HealthCheckStatusDetailsProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HealthCheckStatusDetailsProperties.

func (*HealthCheckStatusDetailsProperties) UnmarshalJSON

func (h *HealthCheckStatusDetailsProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HealthCheckStatusDetailsProperties.

type HealthStatus

type HealthStatus string

HealthStatus - Health status indicating whether a pool is available to create Dev Boxes.

const (
	// HealthStatusHealthy - Healthy health status.
	HealthStatusHealthy HealthStatus = "Healthy"
	// HealthStatusPending - Pending health status.
	HealthStatusPending HealthStatus = "Pending"
	// HealthStatusUnhealthy - Unhealthy health status.
	HealthStatusUnhealthy HealthStatus = "Unhealthy"
	// HealthStatusUnknown - Unknown health status.
	HealthStatusUnknown HealthStatus = "Unknown"
	// HealthStatusWarning - Warning health status.
	HealthStatusWarning HealthStatus = "Warning"
)

func PossibleHealthStatusValues

func PossibleHealthStatusValues() []HealthStatus

PossibleHealthStatusValues returns the possible values for the HealthStatus const type.

type HealthStatusDetail

type HealthStatusDetail struct {
	// READ-ONLY; An identifier for the issue.
	Code *string

	// READ-ONLY; A message describing the issue, intended to be suitable for display in a user interface
	Message *string
}

HealthStatusDetail - Pool health status detail.

func (HealthStatusDetail) MarshalJSON

func (h HealthStatusDetail) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type HealthStatusDetail.

func (*HealthStatusDetail) UnmarshalJSON

func (h *HealthStatusDetail) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type HealthStatusDetail.

type HibernateSupport

type HibernateSupport string

HibernateSupport - Indicates whether hibernate is enabled/disabled.

const (
	// HibernateSupportDisabled - Hibernate is disabled.
	HibernateSupportDisabled HibernateSupport = "Disabled"
	// HibernateSupportEnabled - Hibernate is enabled.
	HibernateSupportEnabled HibernateSupport = "Enabled"
)

func PossibleHibernateSupportValues

func PossibleHibernateSupportValues() []HibernateSupport

PossibleHibernateSupportValues returns the possible values for the HibernateSupport const type.

type Image

type Image struct {
	// Image properties.
	Properties *ImageProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Image - Represents an image.

func (Image) MarshalJSON

func (i Image) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Image.

func (*Image) UnmarshalJSON

func (i *Image) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Image.

type ImageCreationErrorDetails

type ImageCreationErrorDetails struct {
	// An identifier for the error.
	Code *string

	// A message describing the error.
	Message *string
}

ImageCreationErrorDetails - Image creation error details.

func (ImageCreationErrorDetails) MarshalJSON

func (i ImageCreationErrorDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageCreationErrorDetails.

func (*ImageCreationErrorDetails) UnmarshalJSON

func (i *ImageCreationErrorDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageCreationErrorDetails.

type ImageDefinition

type ImageDefinition struct {
	// Image Definition properties
	Properties *ImageDefinitionProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ImageDefinition - Represents a definition for an Image.

func (ImageDefinition) MarshalJSON

func (i ImageDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinition.

func (*ImageDefinition) UnmarshalJSON

func (i *ImageDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinition.

type ImageDefinitionBuild

type ImageDefinitionBuild struct {
	// Image Definition Build properties
	Properties *ImageDefinitionBuildProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ImageDefinitionBuild - Represents a specific build of an Image Definition.

func (ImageDefinitionBuild) MarshalJSON

func (i ImageDefinitionBuild) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuild.

func (*ImageDefinitionBuild) UnmarshalJSON

func (i *ImageDefinitionBuild) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuild.

type ImageDefinitionBuildDetails

type ImageDefinitionBuildDetails struct {
	// READ-ONLY; End time of the task group.
	EndTime *time.Time

	// READ-ONLY; Details for image creation error. Populated when the image creation is not successful.
	ErrorDetails *ImageCreationErrorDetails

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The specific image version used by the build.
	ImageReference *ImageReference

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Start time of the task group.
	StartTime *time.Time

	// READ-ONLY; The status of the build.
	Status *ImageDefinitionBuildStatus

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The list of task groups executed during the image definition build.
	TaskGroups []*ImageDefinitionBuildTaskGroup

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ImageDefinitionBuildDetails - Represents a specific build of an Image Definition.

func (ImageDefinitionBuildDetails) MarshalJSON

func (i ImageDefinitionBuildDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildDetails.

func (*ImageDefinitionBuildDetails) UnmarshalJSON

func (i *ImageDefinitionBuildDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildDetails.

type ImageDefinitionBuildListResult

type ImageDefinitionBuildListResult struct {
	// READ-ONLY; The ImageDefinitionBuild items on this page
	Value []*ImageDefinitionBuild

	// The link to the next page of items
	NextLink *string
}

ImageDefinitionBuildListResult - Paged collection of ImageDefinitionBuild items

func (ImageDefinitionBuildListResult) MarshalJSON

func (i ImageDefinitionBuildListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildListResult.

func (*ImageDefinitionBuildListResult) UnmarshalJSON

func (i *ImageDefinitionBuildListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildListResult.

type ImageDefinitionBuildProperties

type ImageDefinitionBuildProperties struct {
	// READ-ONLY; End time of the task group.
	EndTime *time.Time

	// READ-ONLY; Details for image creation error. Populated when the image creation is not successful.
	ErrorDetails *ImageCreationErrorDetails

	// READ-ONLY; The specific image version used by the build.
	ImageReference *ImageReference

	// READ-ONLY; Start time of the task group.
	StartTime *time.Time

	// READ-ONLY; The status of the build.
	Status *ImageDefinitionBuildStatus
}

ImageDefinitionBuildProperties - Properties of an Image Definition Build.

func (ImageDefinitionBuildProperties) MarshalJSON

func (i ImageDefinitionBuildProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildProperties.

func (*ImageDefinitionBuildProperties) UnmarshalJSON

func (i *ImageDefinitionBuildProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildProperties.

type ImageDefinitionBuildStatus

type ImageDefinitionBuildStatus string

ImageDefinitionBuildStatus - The state of an Image Definition Build.

const (
	// ImageDefinitionBuildStatusCancelled - The image build has been cancelled.
	ImageDefinitionBuildStatusCancelled ImageDefinitionBuildStatus = "Cancelled"
	// ImageDefinitionBuildStatusFailed - The image build has failed.
	ImageDefinitionBuildStatusFailed ImageDefinitionBuildStatus = "Failed"
	// ImageDefinitionBuildStatusRunning - The image build is running.
	ImageDefinitionBuildStatusRunning ImageDefinitionBuildStatus = "Running"
	// ImageDefinitionBuildStatusSucceeded - The image build has succeeded.
	ImageDefinitionBuildStatusSucceeded ImageDefinitionBuildStatus = "Succeeded"
	// ImageDefinitionBuildStatusTimedOut - The image build has timed out.
	ImageDefinitionBuildStatusTimedOut ImageDefinitionBuildStatus = "TimedOut"
	// ImageDefinitionBuildStatusValidationFailed - The built image has failed validation.
	ImageDefinitionBuildStatusValidationFailed ImageDefinitionBuildStatus = "ValidationFailed"
)

func PossibleImageDefinitionBuildStatusValues

func PossibleImageDefinitionBuildStatusValues() []ImageDefinitionBuildStatus

PossibleImageDefinitionBuildStatusValues returns the possible values for the ImageDefinitionBuildStatus const type.

type ImageDefinitionBuildTask

type ImageDefinitionBuildTask struct {
	// Display name to help differentiate multiple instances of the same task.
	DisplayName *string

	// The name of the task.
	Name *string

	// Parameters for the task.
	Parameters []*ImageDefinitionBuildTaskParametersItem

	// READ-ONLY; End time of the task.
	EndTime *time.Time

	// READ-ONLY; ID of the task instance.
	ID *string

	// READ-ONLY; The URI for retrieving logs for the task execution.
	LogURI *string

	// READ-ONLY; Start time of the task.
	StartTime *time.Time

	// READ-ONLY; The status of the task.
	Status *ImageDefinitionBuildStatus
}

ImageDefinitionBuildTask - A task executed during the image definition build.

func (ImageDefinitionBuildTask) MarshalJSON

func (i ImageDefinitionBuildTask) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildTask.

func (*ImageDefinitionBuildTask) UnmarshalJSON

func (i *ImageDefinitionBuildTask) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildTask.

type ImageDefinitionBuildTaskGroup

type ImageDefinitionBuildTaskGroup struct {
	// READ-ONLY; End time of the task group.
	EndTime *time.Time

	// READ-ONLY; The name of the task group.
	Name *string

	// READ-ONLY; Start time of the task group.
	StartTime *time.Time

	// READ-ONLY; The status of the task group.
	Status *ImageDefinitionBuildStatus

	// READ-ONLY; The list of tasks executed during the task group.
	Tasks []*ImageDefinitionBuildTask
}

ImageDefinitionBuildTaskGroup - A task group executed during the image definition build.

func (ImageDefinitionBuildTaskGroup) MarshalJSON

func (i ImageDefinitionBuildTaskGroup) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildTaskGroup.

func (*ImageDefinitionBuildTaskGroup) UnmarshalJSON

func (i *ImageDefinitionBuildTaskGroup) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildTaskGroup.

type ImageDefinitionBuildTaskParametersItem

type ImageDefinitionBuildTaskParametersItem struct {
	// REQUIRED; Key of the parameter.
	Key *string

	// REQUIRED; Value of the parameter.
	Value *string
}

ImageDefinitionBuildTaskParametersItem - Parameters for an image definition build task.

func (ImageDefinitionBuildTaskParametersItem) MarshalJSON

func (i ImageDefinitionBuildTaskParametersItem) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionBuildTaskParametersItem.

func (*ImageDefinitionBuildTaskParametersItem) UnmarshalJSON

func (i *ImageDefinitionBuildTaskParametersItem) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionBuildTaskParametersItem.

type ImageDefinitionListResult

type ImageDefinitionListResult struct {
	// READ-ONLY; The ImageDefinition items on this page
	Value []*ImageDefinition

	// The link to the next page of items
	NextLink *string
}

ImageDefinitionListResult - Paged collection of ImageDefinition items

func (ImageDefinitionListResult) MarshalJSON

func (i ImageDefinitionListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionListResult.

func (*ImageDefinitionListResult) UnmarshalJSON

func (i *ImageDefinitionListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionListResult.

type ImageDefinitionProperties

type ImageDefinitionProperties struct {
	// Another Image Definition that this one extends.
	Extends *ImageDefinitionReference

	// Image reference information.
	ImageReference *ImageReference

	// Details about the latest build.
	LatestBuild *LatestImageBuild

	// Tasks to run at Dev Box provisioning time.
	Tasks []*CustomizationTaskInstance

	// Tasks to run when a user first logs into a Dev Box.
	UserTasks []*CustomizationTaskInstance

	// READ-ONLY; Image reference information for the currently active image (only populated during updates).
	ActiveImageReference *ImageReference

	// READ-ONLY; Indicates if automatic image builds will be triggered for image definition updates
	AutoImageBuild *AutoImageBuildStatus

	// READ-ONLY; The URL to the repository file containing the image definition.
	FileURL *string

	// READ-ONLY; Details for image validator error. Populated when the image validation is not successful.
	ImageValidationErrorDetails *ImageValidationErrorDetails

	// READ-ONLY; Validation status of the configured image.
	ImageValidationStatus *ImageValidationStatus

	// READ-ONLY; Validation status for the Image Definition.
	ValidationStatus *CatalogResourceValidationStatus
}

ImageDefinitionProperties - Properties of an Image Definition.

func (ImageDefinitionProperties) MarshalJSON

func (i ImageDefinitionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionProperties.

func (*ImageDefinitionProperties) UnmarshalJSON

func (i *ImageDefinitionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionProperties.

type ImageDefinitionReference

type ImageDefinitionReference struct {
	// REQUIRED; Name of the referenced Image Definition.
	ImageDefinition *string

	// Parameters for the referenced Image Definition.
	Parameters []*DefinitionParametersItem
}

ImageDefinitionReference - A reference to an Image Definition.

func (ImageDefinitionReference) MarshalJSON

func (i ImageDefinitionReference) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageDefinitionReference.

func (*ImageDefinitionReference) UnmarshalJSON

func (i *ImageDefinitionReference) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageDefinitionReference.

type ImageListResult

type ImageListResult struct {
	// READ-ONLY; The Image items on this page
	Value []*Image

	// The link to the next page of items
	NextLink *string
}

ImageListResult - Paged collection of Image items

func (ImageListResult) MarshalJSON

func (i ImageListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageListResult.

func (*ImageListResult) UnmarshalJSON

func (i *ImageListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageListResult.

type ImageProperties

type ImageProperties struct {
	// READ-ONLY; The architecture type of the image.
	Architecture *ArchitectureType

	// READ-ONLY; The description of the image.
	Description *string

	// READ-ONLY; Indicates whether this image has hibernate enabled. Not all images are capable of supporting hibernation. To
	// find out more see https://aka.ms/devbox/hibernate
	HibernateSupport *HibernateSupport

	// READ-ONLY; The name of the image offer.
	Offer *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState

	// READ-ONLY; The publisher of the image.
	Publisher *string

	// READ-ONLY; The recommended machine configuration to use with the image.
	RecommendedMachineConfiguration *RecommendedMachineConfiguration

	// READ-ONLY; The SKU name for the image.
	SKU *string
}

ImageProperties - Properties of an image.

func (ImageProperties) MarshalJSON

func (i ImageProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageProperties.

func (*ImageProperties) UnmarshalJSON

func (i *ImageProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageProperties.

type ImageReference

type ImageReference struct {
	// Image ID, or Image version ID. When Image ID is provided, its latest version will be used.
	ID *string

	// READ-ONLY; The actual version of the image after use. When id references a gallery image latest version, this will indicate
	// the actual version in use.
	ExactVersion *string
}

ImageReference - Image reference information.

func (ImageReference) MarshalJSON

func (i ImageReference) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageReference.

func (*ImageReference) UnmarshalJSON

func (i *ImageReference) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageReference.

type ImageValidationErrorDetails

type ImageValidationErrorDetails struct {
	// An identifier for the error.
	Code *string

	// A message describing the error.
	Message *string
}

ImageValidationErrorDetails - Image validation error details.

func (ImageValidationErrorDetails) MarshalJSON

func (i ImageValidationErrorDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageValidationErrorDetails.

func (*ImageValidationErrorDetails) UnmarshalJSON

func (i *ImageValidationErrorDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageValidationErrorDetails.

type ImageValidationStatus

type ImageValidationStatus string

ImageValidationStatus - Image validation status.

const (
	// ImageValidationStatusFailed - Failed image validation status.
	ImageValidationStatusFailed ImageValidationStatus = "Failed"
	// ImageValidationStatusPending - Pending image validation status.
	ImageValidationStatusPending ImageValidationStatus = "Pending"
	// ImageValidationStatusSucceeded - Succeeded image validation status.
	ImageValidationStatusSucceeded ImageValidationStatus = "Succeeded"
	// ImageValidationStatusTimedOut - Timed out image validation status.
	ImageValidationStatusTimedOut ImageValidationStatus = "TimedOut"
	// ImageValidationStatusUnknown - Unknown image validation status.
	ImageValidationStatusUnknown ImageValidationStatus = "Unknown"
)

func PossibleImageValidationStatusValues

func PossibleImageValidationStatusValues() []ImageValidationStatus

PossibleImageValidationStatusValues returns the possible values for the ImageValidationStatus const type.

type ImageVersion

type ImageVersion struct {
	// Image version properties.
	Properties *ImageVersionProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ImageVersion - Represents an image version.

func (ImageVersion) MarshalJSON

func (i ImageVersion) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageVersion.

func (*ImageVersion) UnmarshalJSON

func (i *ImageVersion) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageVersion.

type ImageVersionListResult

type ImageVersionListResult struct {
	// READ-ONLY; The ImageVersion items on this page
	Value []*ImageVersion

	// The link to the next page of items
	NextLink *string
}

ImageVersionListResult - Paged collection of ImageVersion items

func (ImageVersionListResult) MarshalJSON

func (i ImageVersionListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageVersionListResult.

func (*ImageVersionListResult) UnmarshalJSON

func (i *ImageVersionListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageVersionListResult.

type ImageVersionProperties

type ImageVersionProperties struct {
	// READ-ONLY; If the version should be excluded from being treated as the latest version.
	ExcludeFromLatest *bool

	// READ-ONLY; The semantic version string.
	Name *string

	// READ-ONLY; The size of the OS disk image, in GB.
	OSDiskImageSizeInGb *int32

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState

	// READ-ONLY; The datetime that the backing image version was published.
	PublishedDate *time.Time
}

ImageVersionProperties - Properties of an image version.

func (ImageVersionProperties) MarshalJSON

func (i ImageVersionProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ImageVersionProperties.

func (*ImageVersionProperties) UnmarshalJSON

func (i *ImageVersionProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ImageVersionProperties.

type ImageVersionsClient

type ImageVersionsClient struct {
	// contains filtered or unexported fields
}

ImageVersionsClient contains the methods for the ImageVersions group. Don't use this type directly, use NewImageVersionsClient() instead.

Generated from API version 2026-01-01-preview

func NewImageVersionsClient

func NewImageVersionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ImageVersionsClient, error)

NewImageVersionsClient creates a new instance of ImageVersionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ImageVersionsClient) Get

func (client *ImageVersionsClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, galleryName string, imageName string, versionName string, options *ImageVersionsClientGetOptions) (ImageVersionsClientGetResponse, error)

Get - Gets an image version. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • imageName - The name of the image.
  • versionName - The version of the image.
  • options - ImageVersionsClientGetOptions contains the optional parameters for the ImageVersionsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ImageVersions_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewImageVersionsClient().Get(ctx, "rg1", "Contoso", "DefaultDevGallery", "Win11", "1.0.0", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ImageVersionsClientGetResponse{
	// 	ImageVersion: armdevcenter.ImageVersion{
	// 		Name: to.Ptr("1.0.0"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images/versions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/Win11/versions/1.0.0"),
	// 		Properties: &armdevcenter.ImageVersionProperties{
	// 			ExcludeFromLatest: to.Ptr(false),
	// 			OSDiskImageSizeInGb: to.Ptr[int32](64),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			PublishedDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-01T12:45:16.845Z"); return t}()),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ImageVersionsClient) GetByProject

func (client *ImageVersionsClient) GetByProject(ctx context.Context, resourceGroupName string, projectName string, imageName string, versionName string, options *ImageVersionsClientGetByProjectOptions) (ImageVersionsClientGetByProjectResponse, error)

GetByProject - Gets an image version. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • imageName - The name of the image.
  • versionName - The version of the image.
  • options - ImageVersionsClientGetByProjectOptions contains the optional parameters for the ImageVersionsClient.GetByProject method.
Example

Generated from example definition: 2026-01-01-preview/ImageVersions_GetByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewImageVersionsClient().GetByProject(ctx, "rg1", "myProject", "~gallery~DefaultDevGallery~ContosoImageDefinition", "1.0.0", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ImageVersionsClientGetByProjectResponse{
	// 	ImageVersion: armdevcenter.ImageVersion{
	// 		Name: to.Ptr("1.0.0"),
	// 		Type: to.Ptr("Microsoft.DevCenter/project/images/versions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition/versions/1.0.0"),
	// 		Properties: &armdevcenter.ImageVersionProperties{
	// 			ExcludeFromLatest: to.Ptr(false),
	// 			OSDiskImageSizeInGb: to.Ptr[int32](64),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			PublishedDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-01T12:45:16.845Z"); return t}()),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ImageVersionsClient) NewListByImagePager

func (client *ImageVersionsClient) NewListByImagePager(resourceGroupName string, devCenterName string, galleryName string, imageName string, options *ImageVersionsClientListByImageOptions) *runtime.Pager[ImageVersionsClientListByImageResponse]

NewListByImagePager - Lists versions for an image.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • imageName - The name of the image.
  • options - ImageVersionsClientListByImageOptions contains the optional parameters for the ImageVersionsClient.NewListByImagePager method.
Example

Generated from example definition: 2026-01-01-preview/ImageVersions_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewImageVersionsClient().NewListByImagePager("rg1", "Contoso", "DefaultDevGallery", "Win11", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ImageVersionsClientListByImageResponse{
		// 	ImageVersionListResult: armdevcenter.ImageVersionListResult{
		// 		Value: []*armdevcenter.ImageVersion{
		// 			{
		// 				Name: to.Ptr("1.0.0"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images/versions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/Win11/versions/1.0.0"),
		// 				Properties: &armdevcenter.ImageVersionProperties{
		// 					ExcludeFromLatest: to.Ptr(false),
		// 					OSDiskImageSizeInGb: to.Ptr[int32](64),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					PublishedDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-01T12:45:16.845Z"); return t}()),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*ImageVersionsClient) NewListByProjectPager

func (client *ImageVersionsClient) NewListByProjectPager(resourceGroupName string, projectName string, imageName string, options *ImageVersionsClientListByProjectOptions) *runtime.Pager[ImageVersionsClientListByProjectResponse]

NewListByProjectPager - Lists versions for an image.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • imageName - The name of the image.
  • options - ImageVersionsClientListByProjectOptions contains the optional parameters for the ImageVersionsClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/ImageVersions_ListByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewImageVersionsClient().NewListByProjectPager("rg1", "myProject", "~gallery~DefaultDevGallery~ContosoImageDefinition", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ImageVersionsClientListByProjectResponse{
		// 	ImageVersionListResult: armdevcenter.ImageVersionListResult{
		// 		Value: []*armdevcenter.ImageVersion{
		// 			{
		// 				Name: to.Ptr("1.0.0"),
		// 				Type: to.Ptr("Microsoft.DevCenter/project/images/versions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition/versions/1.0.0"),
		// 				Properties: &armdevcenter.ImageVersionProperties{
		// 					ExcludeFromLatest: to.Ptr(false),
		// 					OSDiskImageSizeInGb: to.Ptr[int32](64),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					PublishedDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-01T12:45:16.845Z"); return t}()),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ImageVersionsClientGetByProjectOptions

type ImageVersionsClientGetByProjectOptions struct {
}

ImageVersionsClientGetByProjectOptions contains the optional parameters for the ImageVersionsClient.GetByProject method.

type ImageVersionsClientGetByProjectResponse

type ImageVersionsClientGetByProjectResponse struct {
	// Represents an image version.
	ImageVersion
}

ImageVersionsClientGetByProjectResponse contains the response from method ImageVersionsClient.GetByProject.

type ImageVersionsClientGetOptions

type ImageVersionsClientGetOptions struct {
}

ImageVersionsClientGetOptions contains the optional parameters for the ImageVersionsClient.Get method.

type ImageVersionsClientGetResponse

type ImageVersionsClientGetResponse struct {
	// Represents an image version.
	ImageVersion
}

ImageVersionsClientGetResponse contains the response from method ImageVersionsClient.Get.

type ImageVersionsClientListByImageOptions

type ImageVersionsClientListByImageOptions struct {
}

ImageVersionsClientListByImageOptions contains the optional parameters for the ImageVersionsClient.NewListByImagePager method.

type ImageVersionsClientListByImageResponse

type ImageVersionsClientListByImageResponse struct {
	// Paged collection of ImageVersion items
	ImageVersionListResult
}

ImageVersionsClientListByImageResponse contains the response from method ImageVersionsClient.NewListByImagePager.

type ImageVersionsClientListByProjectOptions

type ImageVersionsClientListByProjectOptions struct {
}

ImageVersionsClientListByProjectOptions contains the optional parameters for the ImageVersionsClient.NewListByProjectPager method.

type ImageVersionsClientListByProjectResponse

type ImageVersionsClientListByProjectResponse struct {
	// Paged collection of ImageVersion items
	ImageVersionListResult
}

ImageVersionsClientListByProjectResponse contains the response from method ImageVersionsClient.NewListByProjectPager.

type ImagesClient

type ImagesClient struct {
	// contains filtered or unexported fields
}

ImagesClient contains the methods for the Images group. Don't use this type directly, use NewImagesClient() instead.

Generated from API version 2026-01-01-preview

func NewImagesClient

func NewImagesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ImagesClient, error)

NewImagesClient creates a new instance of ImagesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ImagesClient) Get

func (client *ImagesClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, galleryName string, imageName string, options *ImagesClientGetOptions) (ImagesClientGetResponse, error)

Get - Gets a gallery image. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • imageName - The name of the image.
  • options - ImagesClientGetOptions contains the optional parameters for the ImagesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/Images_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewImagesClient().Get(ctx, "rg1", "Contoso", "DefaultDevGallery", "ContosoBaseImage", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ImagesClientGetResponse{
	// 	Image: armdevcenter.Image{
	// 		Name: to.Ptr("ContosoBaseImage"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DefaultDevGallery/images/ContosoBaseImage"),
	// 		Properties: &armdevcenter.ImageProperties{
	// 			Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
	// 			Description: to.Ptr("Standard Windows Dev/Test image."),
	// 			Offer: to.Ptr("Finance"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			Publisher: to.Ptr("Contoso"),
	// 			RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
	// 				Memory: &armdevcenter.ResourceRange{
	// 					Max: to.Ptr[int32](512),
	// 					Min: to.Ptr[int32](256),
	// 				},
	// 				VCPUs: &armdevcenter.ResourceRange{
	// 					Max: to.Ptr[int32](8),
	// 					Min: to.Ptr[int32](4),
	// 				},
	// 			},
	// 			SKU: to.Ptr("Backend"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ImagesClient) GetByProject

func (client *ImagesClient) GetByProject(ctx context.Context, resourceGroupName string, projectName string, imageName string, options *ImagesClientGetByProjectOptions) (ImagesClientGetByProjectResponse, error)

GetByProject - Gets an image. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • imageName - The name of the image.
  • options - ImagesClientGetByProjectOptions contains the optional parameters for the ImagesClient.GetByProject method.
Example

Generated from example definition: 2026-01-01-preview/Images_GetByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewImagesClient().GetByProject(ctx, "rg1", "myProject", "~gallery~DefaultDevGallery~ContosoBaseImage", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ImagesClientGetByProjectResponse{
	// 	Image: armdevcenter.Image{
	// 		Name: to.Ptr("ContosoBaseImage"),
	// 		Type: to.Ptr("Microsoft.DevCenter/project/images"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/project/myProject/images/~gallery~DefaultDevGallery~ContosoBaseImage"),
	// 		Properties: &armdevcenter.ImageProperties{
	// 			Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
	// 			Description: to.Ptr("Standard Windows Dev/Test image."),
	// 			Offer: to.Ptr("Finance"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			Publisher: to.Ptr("Contoso"),
	// 			RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
	// 				Memory: &armdevcenter.ResourceRange{
	// 					Max: to.Ptr[int32](512),
	// 					Min: to.Ptr[int32](256),
	// 				},
	// 				VCPUs: &armdevcenter.ResourceRange{
	// 					Max: to.Ptr[int32](8),
	// 					Min: to.Ptr[int32](4),
	// 				},
	// 			},
	// 			SKU: to.Ptr("Backend"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ImagesClient) NewListByDevCenterPager

func (client *ImagesClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *ImagesClientListByDevCenterOptions) *runtime.Pager[ImagesClientListByDevCenterResponse]

NewListByDevCenterPager - Lists images for a devcenter.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - ImagesClientListByDevCenterOptions contains the optional parameters for the ImagesClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/Images_ListByDevCenter.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewImagesClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ImagesClientListByDevCenterResponse{
		// 	ImageListResult: armdevcenter.ImageListResult{
		// 		Value: []*armdevcenter.Image{
		// 			{
		// 				Name: to.Ptr("ContosoBaseImage"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Windows 10 Enterprise + OS Optimizations 1909"),
		// 					Offer: to.Ptr("windows-ent-cpc"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					Publisher: to.Ptr("MicrosoftWindowsDesktop"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](256),
		// 							Min: to.Ptr[int32](128),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](4),
		// 							Min: to.Ptr[int32](2),
		// 						},
		// 					},
		// 					SKU: to.Ptr("19h2-ent-cpc-os-g2"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("ContosoBaseImage2"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage2"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Standard Windows Dev/Test image."),
		// 					Offer: to.Ptr("Finance"),
		// 					Publisher: to.Ptr("Contoso"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](512),
		// 							Min: to.Ptr[int32](256),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](8),
		// 							Min: to.Ptr[int32](4),
		// 						},
		// 					},
		// 					SKU: to.Ptr("Backend"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*ImagesClient) NewListByGalleryPager

func (client *ImagesClient) NewListByGalleryPager(resourceGroupName string, devCenterName string, galleryName string, options *ImagesClientListByGalleryOptions) *runtime.Pager[ImagesClientListByGalleryResponse]

NewListByGalleryPager - Lists images for a gallery.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • galleryName - The name of the gallery.
  • options - ImagesClientListByGalleryOptions contains the optional parameters for the ImagesClient.NewListByGalleryPager method.
Example

Generated from example definition: 2026-01-01-preview/Images_ListByGallery.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewImagesClient().NewListByGalleryPager("rg1", "Contoso", "DevGallery", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ImagesClientListByGalleryResponse{
		// 	ImageListResult: armdevcenter.ImageListResult{
		// 		Value: []*armdevcenter.Image{
		// 			{
		// 				Name: to.Ptr("ContosoBaseImage"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Windows 10 Enterprise + OS Optimizations 1909"),
		// 					Offer: to.Ptr("windows-ent-cpc"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					Publisher: to.Ptr("MicrosoftWindowsDesktop"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](256),
		// 							Min: to.Ptr[int32](128),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](4),
		// 							Min: to.Ptr[int32](2),
		// 						},
		// 					},
		// 					SKU: to.Ptr("19h2-ent-cpc-os-g2"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("ContosoBaseImage2"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/galleries/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/DevGallery/images/ContosoBaseImage2"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Standard Windows Dev/Test image."),
		// 					Offer: to.Ptr("Finance"),
		// 					Publisher: to.Ptr("Contoso"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](512),
		// 							Min: to.Ptr[int32](256),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](8),
		// 							Min: to.Ptr[int32](4),
		// 						},
		// 					},
		// 					SKU: to.Ptr("Backend"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*ImagesClient) NewListByProjectPager

func (client *ImagesClient) NewListByProjectPager(resourceGroupName string, projectName string, options *ImagesClientListByProjectOptions) *runtime.Pager[ImagesClientListByProjectResponse]

NewListByProjectPager - Lists images for a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ImagesClientListByProjectOptions contains the optional parameters for the ImagesClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/Images_ListByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewImagesClient().NewListByProjectPager("rg1", "myProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ImagesClientListByProjectResponse{
		// 	ImageListResult: armdevcenter.ImageListResult{
		// 		Value: []*armdevcenter.Image{
		// 			{
		// 				Name: to.Ptr("~gallery~DefaultDevGallery~ContosoBaseImage"),
		// 				Type: to.Ptr("Microsoft.DevCenter/project/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~gallery~DefaultDevGallery~ContosoBaseImage"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Windows 10 Enterprise + OS Optimizations 1909"),
		// 					Offer: to.Ptr("windows-ent-cpc"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					Publisher: to.Ptr("MicrosoftWindowsDesktop"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](256),
		// 							Min: to.Ptr[int32](128),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](4),
		// 							Min: to.Ptr[int32](2),
		// 						},
		// 					},
		// 					SKU: to.Ptr("19h2-ent-cpc-os-g2"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("~catalog~DefaultCatalog~DefaultImage"),
		// 				Type: to.Ptr("Microsoft.DevCenter/project/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~catalog~DefaultCatalog~DefaultImage"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Windows 10 Enterprise + OS Optimizations 1909"),
		// 					Offer: to.Ptr("windows-ent-cpc"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					Publisher: to.Ptr("MicrosoftWindowsDesktop"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](256),
		// 							Min: to.Ptr[int32](128),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](4),
		// 							Min: to.Ptr[int32](2),
		// 						},
		// 					},
		// 					SKU: to.Ptr("19h2-ent-cpc-os-g2"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 			{
		// 				Name: to.Ptr("~gallery~DefaultDevGallery~ContosoImageDefinition"),
		// 				Type: to.Ptr("Microsoft.DevCenter/project/images"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myProject/images/~gallery~DefaultDevGallery~ContosoImageDefinition"),
		// 				Properties: &armdevcenter.ImageProperties{
		// 					Architecture: to.Ptr(armdevcenter.ArchitectureTypeX64),
		// 					Description: to.Ptr("Standard Windows Dev/Test image."),
		// 					Offer: to.Ptr("Finance"),
		// 					Publisher: to.Ptr("Contoso"),
		// 					RecommendedMachineConfiguration: &armdevcenter.RecommendedMachineConfiguration{
		// 						Memory: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](512),
		// 							Min: to.Ptr[int32](256),
		// 						},
		// 						VCPUs: &armdevcenter.ResourceRange{
		// 							Max: to.Ptr[int32](8),
		// 							Min: to.Ptr[int32](4),
		// 						},
		// 					},
		// 					SKU: to.Ptr("Backend"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ImagesClientGetByProjectOptions

type ImagesClientGetByProjectOptions struct {
}

ImagesClientGetByProjectOptions contains the optional parameters for the ImagesClient.GetByProject method.

type ImagesClientGetByProjectResponse

type ImagesClientGetByProjectResponse struct {
	// Represents an image.
	Image
}

ImagesClientGetByProjectResponse contains the response from method ImagesClient.GetByProject.

type ImagesClientGetOptions

type ImagesClientGetOptions struct {
}

ImagesClientGetOptions contains the optional parameters for the ImagesClient.Get method.

type ImagesClientGetResponse

type ImagesClientGetResponse struct {
	// Represents an image.
	Image
}

ImagesClientGetResponse contains the response from method ImagesClient.Get.

type ImagesClientListByDevCenterOptions

type ImagesClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ImagesClientListByDevCenterOptions contains the optional parameters for the ImagesClient.NewListByDevCenterPager method.

type ImagesClientListByDevCenterResponse

type ImagesClientListByDevCenterResponse struct {
	// Paged collection of Image items
	ImageListResult
}

ImagesClientListByDevCenterResponse contains the response from method ImagesClient.NewListByDevCenterPager.

type ImagesClientListByGalleryOptions

type ImagesClientListByGalleryOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ImagesClientListByGalleryOptions contains the optional parameters for the ImagesClient.NewListByGalleryPager method.

type ImagesClientListByGalleryResponse

type ImagesClientListByGalleryResponse struct {
	// Paged collection of Image items
	ImageListResult
}

ImagesClientListByGalleryResponse contains the response from method ImagesClient.NewListByGalleryPager.

type ImagesClientListByProjectOptions

type ImagesClientListByProjectOptions struct {
}

ImagesClientListByProjectOptions contains the optional parameters for the ImagesClient.NewListByProjectPager method.

type ImagesClientListByProjectResponse

type ImagesClientListByProjectResponse struct {
	// Paged collection of Image items
	ImageListResult
}

ImagesClientListByProjectResponse contains the response from method ImagesClient.NewListByProjectPager.

type InheritedProjectCatalogSettings

type InheritedProjectCatalogSettings struct {
	// Whether project catalogs associated with projects in this dev center can be configured to sync catalog items.
	CatalogItemSyncEnableStatus *CatalogItemSyncEnableStatus

	// Indicates the default status of the feature.
	DefaultStatus *FeatureStatus

	// The default values of the feature.
	DefaultValues []*DefaultValue

	// Indicates whether the feature's status, Enabled or Disabled, is configurable at the Project scope.
	StatusModifiable *FeatureStateModifiable

	// Indicates whether the feature values are configurable at the Project scope.
	ValuesModifiable *FeatureStateModifiable
}

InheritedProjectCatalogSettings - Inherited project catalog settings that combine project policy settings with dev center catalog settings.

func (InheritedProjectCatalogSettings) MarshalJSON

func (i InheritedProjectCatalogSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type InheritedProjectCatalogSettings.

func (*InheritedProjectCatalogSettings) UnmarshalJSON

func (i *InheritedProjectCatalogSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type InheritedProjectCatalogSettings.

type InheritedSettingsForProject

type InheritedSettingsForProject struct {
	// READ-ONLY; Azure AI project policy settings that will be enforced on this project.
	AzureAiServicesSettings *FeatureState

	// READ-ONLY; Dev box limits project policy settings that will be enforced on this project.
	DevBoxLimitsSettings *FeatureState

	// READ-ONLY; Dev box schedule delete project policy settings that will be enforced on this project.
	DevBoxScheduleDeleteSettings *FeatureState

	// READ-ONLY; Dev box tunnel project policy settings that will be enforced on this project.
	DevBoxTunnelSettings *FeatureState

	// READ-ONLY; Display name project policy settings that will be enforced on this project.
	DisplayNameSettings *FeatureState

	// READ-ONLY; Network settings that will be enforced on this project.
	NetworkSettings *ProjectNetworkSettings

	// READ-ONLY; Dev Center settings to be used when associating a project with a catalog.
	ProjectCatalogSettings *InheritedProjectCatalogSettings

	// READ-ONLY; Serverless GPU sessions project policy settings that will be enforced on this project.
	ServerlessGpuSessionsSettings *FeatureState

	// READ-ONLY; User customizations project policy settings that will be enforced on this project.
	UserCustomizationsSettings *FeatureState

	// READ-ONLY; Workspace storage project policy settings that will be enforced on this project.
	WorkspaceStorageSettings *FeatureState
}

InheritedSettingsForProject - Applicable inherited settings for a project.

func (InheritedSettingsForProject) MarshalJSON

func (i InheritedSettingsForProject) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type InheritedSettingsForProject.

func (*InheritedSettingsForProject) UnmarshalJSON

func (i *InheritedSettingsForProject) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type InheritedSettingsForProject.

type InstallAzureMonitorAgentEnableStatus

type InstallAzureMonitorAgentEnableStatus string

InstallAzureMonitorAgentEnableStatus - Setting to be used when determining whether to install the Azure Monitor Agent service on Dev Boxes that belong to this dev center.

const (
	// InstallAzureMonitorAgentEnableStatusDisabled - Azure Monitor Agent service is disabled.
	InstallAzureMonitorAgentEnableStatusDisabled InstallAzureMonitorAgentEnableStatus = "Disabled"
	// InstallAzureMonitorAgentEnableStatusEnabled - Azure Monitor Agent service is enabled.
	InstallAzureMonitorAgentEnableStatusEnabled InstallAzureMonitorAgentEnableStatus = "Enabled"
)

func PossibleInstallAzureMonitorAgentEnableStatusValues

func PossibleInstallAzureMonitorAgentEnableStatusValues() []InstallAzureMonitorAgentEnableStatus

PossibleInstallAzureMonitorAgentEnableStatusValues returns the possible values for the InstallAzureMonitorAgentEnableStatus const type.

type KeepAwakeEnableStatus

type KeepAwakeEnableStatus string

KeepAwakeEnableStatus - Enables or disables whether Dev Boxes should be kept awake during active hours.

const (
	// KeepAwakeEnableStatusDisabled - Keep awake is disabled.
	KeepAwakeEnableStatusDisabled KeepAwakeEnableStatus = "Disabled"
	// KeepAwakeEnableStatusEnabled - Keep awake is enabled.
	KeepAwakeEnableStatusEnabled KeepAwakeEnableStatus = "Enabled"
)

func PossibleKeepAwakeEnableStatusValues

func PossibleKeepAwakeEnableStatusValues() []KeepAwakeEnableStatus

PossibleKeepAwakeEnableStatusValues returns the possible values for the KeepAwakeEnableStatus const type.

type KeyEncryptionKeyIdentity

type KeyEncryptionKeyIdentity struct {
	// The type of managed identity to use for key vault access.
	Type *CmkIdentityType

	// For system assigned identity, this will be null. For user assigned identity, this should be the resource ID of the identity.
	UserAssignedIdentityResourceID *string
}

KeyEncryptionKeyIdentity - The managed identity configuration used for key vault access.

func (KeyEncryptionKeyIdentity) MarshalJSON

func (k KeyEncryptionKeyIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type KeyEncryptionKeyIdentity.

func (*KeyEncryptionKeyIdentity) UnmarshalJSON

func (k *KeyEncryptionKeyIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type KeyEncryptionKeyIdentity.

type KeyEncryptionKeyIdentityType

type KeyEncryptionKeyIdentityType string

KeyEncryptionKeyIdentityType - The type of identity to use.

const (
	// KeyEncryptionKeyIdentityTypeDelegatedResourceIdentity - Delegated identity
	KeyEncryptionKeyIdentityTypeDelegatedResourceIdentity KeyEncryptionKeyIdentityType = "delegatedResourceIdentity"
	// KeyEncryptionKeyIdentityTypeSystemAssignedIdentity - System assigned identity
	KeyEncryptionKeyIdentityTypeSystemAssignedIdentity KeyEncryptionKeyIdentityType = "systemAssignedIdentity"
	// KeyEncryptionKeyIdentityTypeUserAssignedIdentity - User assigned identity
	KeyEncryptionKeyIdentityTypeUserAssignedIdentity KeyEncryptionKeyIdentityType = "userAssignedIdentity"
)

func PossibleKeyEncryptionKeyIdentityTypeValues

func PossibleKeyEncryptionKeyIdentityTypeValues() []KeyEncryptionKeyIdentityType

PossibleKeyEncryptionKeyIdentityTypeValues returns the possible values for the KeyEncryptionKeyIdentityType const type.

type LatestImageBuild

type LatestImageBuild struct {
	// READ-ONLY; End time of the task group.
	EndTime *time.Time

	// READ-ONLY; Identifier of a build.
	Name *string

	// READ-ONLY; Start time of the task group.
	StartTime *time.Time

	// READ-ONLY; The state of an Image Definition Build.
	Status *ImageDefinitionBuildStatus
}

LatestImageBuild - Details about the latest build.

func (LatestImageBuild) MarshalJSON

func (l LatestImageBuild) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type LatestImageBuild.

func (*LatestImageBuild) UnmarshalJSON

func (l *LatestImageBuild) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type LatestImageBuild.

type LicenseType

type LicenseType string

LicenseType - License Types

const (
	// LicenseTypeWindowsClient - Windows Client license type.
	LicenseTypeWindowsClient LicenseType = "Windows_Client"
)

func PossibleLicenseTypeValues

func PossibleLicenseTypeValues() []LicenseType

PossibleLicenseTypeValues returns the possible values for the LicenseType const type.

type ListResult

type ListResult struct {
	// READ-ONLY; The DevCenter items on this page
	Value []*DevCenter

	// The link to the next page of items
	NextLink *string
}

ListResult - Paged collection of DevCenter items

func (ListResult) MarshalJSON

func (l ListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ListResult.

func (*ListResult) UnmarshalJSON

func (l *ListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ListResult.

type ListUsagesResult

type ListUsagesResult struct {
	// READ-ONLY; The Usage items on this page
	Value []*Usage

	// The link to the next page of items
	NextLink *string
}

ListUsagesResult - List of Core Usages.

func (ListUsagesResult) MarshalJSON

func (l ListUsagesResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ListUsagesResult.

func (*ListUsagesResult) UnmarshalJSON

func (l *ListUsagesResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ListUsagesResult.

type LocalAdminStatus

type LocalAdminStatus string

LocalAdminStatus - Local Administrator enable or disable status. Indicates whether owners of Dev Boxes are added as local administrators on the Dev Box.

const (
	// LocalAdminStatusDisabled - Local administrator is disabled.
	LocalAdminStatusDisabled LocalAdminStatus = "Disabled"
	// LocalAdminStatusEnabled - Local administrator is enabled.
	LocalAdminStatusEnabled LocalAdminStatus = "Enabled"
)

func PossibleLocalAdminStatusValues

func PossibleLocalAdminStatusValues() []LocalAdminStatus

PossibleLocalAdminStatusValues returns the possible values for the LocalAdminStatus const type.

type ManagedServiceIdentity

type ManagedServiceIdentity struct {
	// REQUIRED; The type of managed identity assigned to this resource.
	Type *ManagedServiceIdentityType

	// The identities assigned to this resource by the user.
	UserAssignedIdentities map[string]*UserAssignedIdentity

	// READ-ONLY; The service principal ID of the system assigned identity. This property will only be provided for a system assigned
	// identity.
	PrincipalID *string

	// READ-ONLY; The tenant ID of the system assigned identity. This property will only be provided for a system assigned identity.
	TenantID *string
}

ManagedServiceIdentity - Managed service identity (system assigned and/or user assigned identities)

func (ManagedServiceIdentity) MarshalJSON

func (m ManagedServiceIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ManagedServiceIdentity.

func (*ManagedServiceIdentity) UnmarshalJSON

func (m *ManagedServiceIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ManagedServiceIdentity.

type ManagedServiceIdentityType

type ManagedServiceIdentityType string

ManagedServiceIdentityType - Type of managed service identity (where both SystemAssigned and UserAssigned types are allowed).

const (
	// ManagedServiceIdentityTypeNone - No managed identity.
	ManagedServiceIdentityTypeNone ManagedServiceIdentityType = "None"
	// ManagedServiceIdentityTypeSystemAssigned - System assigned managed identity.
	ManagedServiceIdentityTypeSystemAssigned ManagedServiceIdentityType = "SystemAssigned"
	// ManagedServiceIdentityTypeSystemAssignedUserAssigned - System and user assigned managed identity.
	ManagedServiceIdentityTypeSystemAssignedUserAssigned ManagedServiceIdentityType = "SystemAssigned,UserAssigned"
	// ManagedServiceIdentityTypeUserAssigned - User assigned managed identity.
	ManagedServiceIdentityTypeUserAssigned ManagedServiceIdentityType = "UserAssigned"
)

func PossibleManagedServiceIdentityTypeValues

func PossibleManagedServiceIdentityTypeValues() []ManagedServiceIdentityType

PossibleManagedServiceIdentityTypeValues returns the possible values for the ManagedServiceIdentityType const type.

type MicrosoftHostedNetworkEnableStatus

type MicrosoftHostedNetworkEnableStatus string

MicrosoftHostedNetworkEnableStatus - Indicates whether pools in this Dev Center can use Microsoft Hosted Networks. Defaults to Enabled if not set.

const (
	// MicrosoftHostedNetworkEnableStatusDisabled - Microsoft Hosted Networks are disabled for this Dev Center.
	MicrosoftHostedNetworkEnableStatusDisabled MicrosoftHostedNetworkEnableStatus = "Disabled"
	// MicrosoftHostedNetworkEnableStatusEnabled - Microsoft Hosted Networks are enabled for this Dev Center.
	MicrosoftHostedNetworkEnableStatusEnabled MicrosoftHostedNetworkEnableStatus = "Enabled"
)

func PossibleMicrosoftHostedNetworkEnableStatusValues

func PossibleMicrosoftHostedNetworkEnableStatusValues() []MicrosoftHostedNetworkEnableStatus

PossibleMicrosoftHostedNetworkEnableStatusValues returns the possible values for the MicrosoftHostedNetworkEnableStatus const type.

type NetworkConnection

type NetworkConnection struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Properties of a Network Connection
	Properties *NetworkProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

NetworkConnection - Network related settings.

func (NetworkConnection) MarshalJSON

func (n NetworkConnection) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkConnection.

func (*NetworkConnection) UnmarshalJSON

func (n *NetworkConnection) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkConnection.

type NetworkConnectionListResult

type NetworkConnectionListResult struct {
	// READ-ONLY; The NetworkConnection items on this page
	Value []*NetworkConnection

	// The link to the next page of items
	NextLink *string
}

NetworkConnectionListResult - Paged collection of NetworkConnection items

func (NetworkConnectionListResult) MarshalJSON

func (n NetworkConnectionListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkConnectionListResult.

func (*NetworkConnectionListResult) UnmarshalJSON

func (n *NetworkConnectionListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkConnectionListResult.

type NetworkConnectionUpdate

type NetworkConnectionUpdate struct {
	// The geo-location where the resource lives.
	Location *string

	// Properties of a network connection resource to be updated.
	Properties *NetworkConnectionUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

NetworkConnectionUpdate - The network connection properties for partial update. Properties not provided in the update request will not be changed.

func (NetworkConnectionUpdate) MarshalJSON

func (n NetworkConnectionUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkConnectionUpdate.

func (*NetworkConnectionUpdate) UnmarshalJSON

func (n *NetworkConnectionUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkConnectionUpdate.

type NetworkConnectionUpdateProperties

type NetworkConnectionUpdateProperties struct {
	// Active Directory domain name.
	DomainName *string

	// The password for the account used to join domain.
	DomainPassword *string

	// The username of an Active Directory account (user or service account) that has permissions to create computer objects in
	// Active Directory. Required format: admin@contoso.com.
	DomainUsername *string

	// Active Directory domain Organization Unit (OU).
	OrganizationUnit *string

	// The subnet to attach Virtual Machines to.
	SubnetID *string
}

NetworkConnectionUpdateProperties - Properties of network connection. These properties can be updated after the resource has been created.

func (NetworkConnectionUpdateProperties) MarshalJSON

func (n NetworkConnectionUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkConnectionUpdateProperties.

func (*NetworkConnectionUpdateProperties) UnmarshalJSON

func (n *NetworkConnectionUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkConnectionUpdateProperties.

type NetworkConnectionsClient

type NetworkConnectionsClient struct {
	// contains filtered or unexported fields
}

NetworkConnectionsClient contains the methods for the NetworkConnections group. Don't use this type directly, use NewNetworkConnectionsClient() instead.

Generated from API version 2026-01-01-preview

func NewNetworkConnectionsClient

func NewNetworkConnectionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*NetworkConnectionsClient, error)

NewNetworkConnectionsClient creates a new instance of NetworkConnectionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*NetworkConnectionsClient) BeginCreateOrUpdate

BeginCreateOrUpdate - Creates or updates a Network Connections resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • body - Represents network connection
  • options - NetworkConnectionsClientBeginCreateOrUpdateOptions contains the optional parameters for the NetworkConnectionsClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewNetworkConnectionsClient().BeginCreateOrUpdate(ctx, "rg1", "uswest3network", armdevcenter.NetworkConnection{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.NetworkProperties{
			DomainJoinType:              to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
			DomainName:                  to.Ptr("mydomaincontroller.local"),
			DomainPassword:              to.Ptr("Password value for user"),
			DomainUsername:              to.Ptr("testuser@mydomaincontroller.local"),
			NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
			SubnetID:                    to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.NetworkConnectionsClientCreateOrUpdateResponse{
	// 	NetworkConnection: armdevcenter.NetworkConnection{
	// 		Name: to.Ptr("uswest3network"),
	// 		Type: to.Ptr("Microsoft.DevCenter/networkconnections"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.NetworkProperties{
	// 			DomainJoinType: to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
	// 			DomainName: to.Ptr("mydomaincontroller.local"),
	// 			DomainUsername: to.Ptr("testuser@mydomaincontroller.local"),
	// 			NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SubnetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*NetworkConnectionsClient) BeginDelete

func (client *NetworkConnectionsClient) BeginDelete(ctx context.Context, resourceGroupName string, networkConnectionName string, options *NetworkConnectionsClientBeginDeleteOptions) (*runtime.Poller[NetworkConnectionsClientDeleteResponse], error)

BeginDelete - Deletes a Network Connections resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientBeginDeleteOptions contains the optional parameters for the NetworkConnectionsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewNetworkConnectionsClient().BeginDelete(ctx, "rg1", "eastusnetwork", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*NetworkConnectionsClient) BeginRunHealthChecks

BeginRunHealthChecks - Triggers a new health check run. The execution and health check result can be tracked via the network Connection health check details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientBeginRunHealthChecksOptions contains the optional parameters for the NetworkConnectionsClient.BeginRunHealthChecks method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_RunHealthChecks.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewNetworkConnectionsClient().BeginRunHealthChecks(ctx, "rg1", "uswest3network", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*NetworkConnectionsClient) BeginUpdate

BeginUpdate - Partially updates a Network Connection. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • body - Represents network connection
  • options - NetworkConnectionsClientBeginUpdateOptions contains the optional parameters for the NetworkConnectionsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewNetworkConnectionsClient().BeginUpdate(ctx, "rg1", "uswest3network", armdevcenter.NetworkConnectionUpdate{
		Properties: &armdevcenter.NetworkConnectionUpdateProperties{
			DomainPassword: to.Ptr("New Password value for user"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.NetworkConnectionsClientUpdateResponse{
	// 	NetworkConnection: armdevcenter.NetworkConnection{
	// 		Name: to.Ptr("uswest3network"),
	// 		Type: to.Ptr("Microsoft.DevCenter/networkconnections"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.NetworkProperties{
	// 			DomainJoinType: to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
	// 			DomainName: to.Ptr("mydomaincontroller.local"),
	// 			DomainUsername: to.Ptr("testuser@mydomaincontroller.local"),
	// 			NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SubnetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*NetworkConnectionsClient) Get

func (client *NetworkConnectionsClient) Get(ctx context.Context, resourceGroupName string, networkConnectionName string, options *NetworkConnectionsClientGetOptions) (NetworkConnectionsClientGetResponse, error)

Get - Gets a network connection resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientGetOptions contains the optional parameters for the NetworkConnectionsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewNetworkConnectionsClient().Get(ctx, "rg1", "uswest3network", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.NetworkConnectionsClientGetResponse{
	// 	NetworkConnection: armdevcenter.NetworkConnection{
	// 		Name: to.Ptr("uswest3network"),
	// 		Type: to.Ptr("Microsoft.DevCenter/networkconnections"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.NetworkProperties{
	// 			DomainJoinType: to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
	// 			DomainName: to.Ptr("mydomaincontroller.local"),
	// 			DomainUsername: to.Ptr("testuser@mydomaincontroller.local"),
	// 			HealthCheckStatus: to.Ptr(armdevcenter.HealthCheckStatusPassed),
	// 			NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SubnetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*NetworkConnectionsClient) GetHealthDetails

func (client *NetworkConnectionsClient) GetHealthDetails(ctx context.Context, resourceGroupName string, networkConnectionName string, options *NetworkConnectionsClientGetHealthDetailsOptions) (NetworkConnectionsClientGetHealthDetailsResponse, error)

GetHealthDetails - Gets health check status details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientGetHealthDetailsOptions contains the optional parameters for the NetworkConnectionsClient.GetHealthDetails method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_GetHealthDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewNetworkConnectionsClient().GetHealthDetails(ctx, "rg1", "eastusnetwork", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.NetworkConnectionsClientGetHealthDetailsResponse{
	// 	HealthCheckStatusDetails: armdevcenter.HealthCheckStatusDetails{
	// 		Name: to.Ptr("latest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/networkconnections/healthchecks"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/eastusnetwork/healthchecks/latest"),
	// 		Properties: &armdevcenter.HealthCheckStatusDetailsProperties{
	// 			EndDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:15Z"); return t}()),
	// 			HealthChecks: []*armdevcenter.HealthCheck{
	// 				{
	// 					DisplayName: to.Ptr("Azure AD device sync"),
	// 					EndDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:14Z"); return t}()),
	// 					StartDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:15Z"); return t}()),
	// 					Status: to.Ptr(armdevcenter.HealthCheckStatusPassed),
	// 				},
	// 			},
	// 			StartDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:14Z"); return t}()),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("System"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("System"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
	// 		},
	// 	},
	// }
}

func (*NetworkConnectionsClient) NewListByResourceGroupPager

NewListByResourceGroupPager - Lists network connections in a resource group.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - NetworkConnectionsClientListByResourceGroupOptions contains the optional parameters for the NetworkConnectionsClient.NewListByResourceGroupPager method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_ListByResourceGroup.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewNetworkConnectionsClient().NewListByResourceGroupPager("rg1", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.NetworkConnectionsClientListByResourceGroupResponse{
		// 	NetworkConnectionListResult: armdevcenter.NetworkConnectionListResult{
		// 		Value: []*armdevcenter.NetworkConnection{
		// 			{
		// 				Name: to.Ptr("uswest3network"),
		// 				Type: to.Ptr("Microsoft.DevCenter/networkconnections"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.NetworkProperties{
		// 					DomainJoinType: to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
		// 					DomainName: to.Ptr("mydomaincontroller.local"),
		// 					DomainUsername: to.Ptr("testuser@mydomaincontroller.local"),
		// 					NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SubnetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*NetworkConnectionsClient) NewListBySubscriptionPager

NewListBySubscriptionPager - Lists network connections in a subscription.

  • options - NetworkConnectionsClientListBySubscriptionOptions contains the optional parameters for the NetworkConnectionsClient.NewListBySubscriptionPager method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_ListBySubscription.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewNetworkConnectionsClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.NetworkConnectionsClientListBySubscriptionResponse{
		// 	NetworkConnectionListResult: armdevcenter.NetworkConnectionListResult{
		// 		Value: []*armdevcenter.NetworkConnection{
		// 			{
		// 				Name: to.Ptr("uswest3network"),
		// 				Type: to.Ptr("Microsoft.DevCenter/networkconnection"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.NetworkProperties{
		// 					DomainJoinType: to.Ptr(armdevcenter.DomainJoinTypeHybridAzureADJoin),
		// 					DomainName: to.Ptr("mydomaincontroller.local"),
		// 					DomainUsername: to.Ptr("testuser@mydomaincontroller.local"),
		// 					NetworkingResourceGroupName: to.Ptr("NetworkInterfaces"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SubnetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/ExampleRG/providers/Microsoft.Network/virtualNetworks/ExampleVNet/subnets/default"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*NetworkConnectionsClient) NewListHealthDetailsPager

func (client *NetworkConnectionsClient) NewListHealthDetailsPager(resourceGroupName string, networkConnectionName string, options *NetworkConnectionsClientListHealthDetailsOptions) *runtime.Pager[NetworkConnectionsClientListHealthDetailsResponse]

NewListHealthDetailsPager - Lists health check status details.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientListHealthDetailsOptions contains the optional parameters for the NetworkConnectionsClient.NewListHealthDetailsPager method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_ListHealthDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewNetworkConnectionsClient().NewListHealthDetailsPager("rg1", "uswest3network", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.NetworkConnectionsClientListHealthDetailsResponse{
		// 	HealthCheckStatusDetailsListResult: armdevcenter.HealthCheckStatusDetailsListResult{
		// 		Value: []*armdevcenter.HealthCheckStatusDetails{
		// 			{
		// 				Name: to.Ptr("latest"),
		// 				Type: to.Ptr("Microsoft.DevCenter/networkconnections/healthchecks"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/networkconnections/uswest3network/healthchecks/latest"),
		// 				Properties: &armdevcenter.HealthCheckStatusDetailsProperties{
		// 					EndDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:15Z"); return t}()),
		// 					HealthChecks: []*armdevcenter.HealthCheck{
		// 						{
		// 							DisplayName: to.Ptr("Azure AD device sync"),
		// 							EndDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:14Z"); return t}()),
		// 							StartDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:15Z"); return t}()),
		// 							Status: to.Ptr(armdevcenter.HealthCheckStatusPassed),
		// 						},
		// 					},
		// 					StartDateTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-07-03T12:43:14Z"); return t}()),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("System"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("System"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeApplication),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*NetworkConnectionsClient) NewListOutboundNetworkDependenciesEndpointsPager

NewListOutboundNetworkDependenciesEndpointsPager - Lists the endpoints that agents may call as part of Dev Box service administration. These FQDNs should be allowed for outbound access in order for the Dev Box service to function.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • networkConnectionName - Name of the Network Connection that can be applied to a Pool.
  • options - NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsOptions contains the optional parameters for the NetworkConnectionsClient.NewListOutboundNetworkDependenciesEndpointsPager method.
Example

Generated from example definition: 2026-01-01-preview/NetworkConnections_ListOutboundNetworkDependenciesEndpoints.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewNetworkConnectionsClient().NewListOutboundNetworkDependenciesEndpointsPager("rg1", "uswest3network", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsResponse{
		// 	OutboundEnvironmentEndpointCollection: armdevcenter.OutboundEnvironmentEndpointCollection{
		// 		Value: []*armdevcenter.OutboundEnvironmentEndpoint{
		// 			{
		// 				Category: to.Ptr("Dev Box Service"),
		// 				Endpoints: []*armdevcenter.EndpointDependency{
		// 					{
		// 						DomainName: to.Ptr("devbox.azure.com"),
		// 						EndpointDetails: []*armdevcenter.EndpointDetail{
		// 							{
		// 								Port: to.Ptr[int32](443),
		// 							},
		// 						},
		// 					},
		// 				},
		// 			},
		// 			{
		// 				Category: to.Ptr("Intune"),
		// 				Endpoints: []*armdevcenter.EndpointDependency{
		// 					{
		// 						DomainName: to.Ptr("login.microsoftonline.com"),
		// 						EndpointDetails: []*armdevcenter.EndpointDetail{
		// 							{
		// 								Port: to.Ptr[int32](443),
		// 							},
		// 						},
		// 					},
		// 				},
		// 			},
		// 			{
		// 				Category: to.Ptr("Cloud PC"),
		// 				Endpoints: []*armdevcenter.EndpointDependency{
		// 					{
		// 						DomainName: to.Ptr("rdweb.wvd.microsoft.com"),
		// 						EndpointDetails: []*armdevcenter.EndpointDetail{
		// 							{
		// 								Port: to.Ptr[int32](443),
		// 							},
		// 						},
		// 					},
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type NetworkConnectionsClientBeginCreateOrUpdateOptions

type NetworkConnectionsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

NetworkConnectionsClientBeginCreateOrUpdateOptions contains the optional parameters for the NetworkConnectionsClient.BeginCreateOrUpdate method.

type NetworkConnectionsClientBeginDeleteOptions

type NetworkConnectionsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

NetworkConnectionsClientBeginDeleteOptions contains the optional parameters for the NetworkConnectionsClient.BeginDelete method.

type NetworkConnectionsClientBeginRunHealthChecksOptions

type NetworkConnectionsClientBeginRunHealthChecksOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

NetworkConnectionsClientBeginRunHealthChecksOptions contains the optional parameters for the NetworkConnectionsClient.BeginRunHealthChecks method.

type NetworkConnectionsClientBeginUpdateOptions

type NetworkConnectionsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

NetworkConnectionsClientBeginUpdateOptions contains the optional parameters for the NetworkConnectionsClient.BeginUpdate method.

type NetworkConnectionsClientCreateOrUpdateResponse

type NetworkConnectionsClientCreateOrUpdateResponse struct {
	// Network related settings.
	NetworkConnection
}

NetworkConnectionsClientCreateOrUpdateResponse contains the response from method NetworkConnectionsClient.BeginCreateOrUpdate.

type NetworkConnectionsClientDeleteResponse

type NetworkConnectionsClientDeleteResponse struct {
}

NetworkConnectionsClientDeleteResponse contains the response from method NetworkConnectionsClient.BeginDelete.

type NetworkConnectionsClientGetHealthDetailsOptions

type NetworkConnectionsClientGetHealthDetailsOptions struct {
}

NetworkConnectionsClientGetHealthDetailsOptions contains the optional parameters for the NetworkConnectionsClient.GetHealthDetails method.

type NetworkConnectionsClientGetHealthDetailsResponse

type NetworkConnectionsClientGetHealthDetailsResponse struct {
	// Health Check details.
	HealthCheckStatusDetails
}

NetworkConnectionsClientGetHealthDetailsResponse contains the response from method NetworkConnectionsClient.GetHealthDetails.

type NetworkConnectionsClientGetOptions

type NetworkConnectionsClientGetOptions struct {
}

NetworkConnectionsClientGetOptions contains the optional parameters for the NetworkConnectionsClient.Get method.

type NetworkConnectionsClientGetResponse

type NetworkConnectionsClientGetResponse struct {
	// Network related settings.
	NetworkConnection
}

NetworkConnectionsClientGetResponse contains the response from method NetworkConnectionsClient.Get.

type NetworkConnectionsClientListByResourceGroupOptions

type NetworkConnectionsClientListByResourceGroupOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

NetworkConnectionsClientListByResourceGroupOptions contains the optional parameters for the NetworkConnectionsClient.NewListByResourceGroupPager method.

type NetworkConnectionsClientListByResourceGroupResponse

type NetworkConnectionsClientListByResourceGroupResponse struct {
	// Paged collection of NetworkConnection items
	NetworkConnectionListResult
}

NetworkConnectionsClientListByResourceGroupResponse contains the response from method NetworkConnectionsClient.NewListByResourceGroupPager.

type NetworkConnectionsClientListBySubscriptionOptions

type NetworkConnectionsClientListBySubscriptionOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

NetworkConnectionsClientListBySubscriptionOptions contains the optional parameters for the NetworkConnectionsClient.NewListBySubscriptionPager method.

type NetworkConnectionsClientListBySubscriptionResponse

type NetworkConnectionsClientListBySubscriptionResponse struct {
	// Paged collection of NetworkConnection items
	NetworkConnectionListResult
}

NetworkConnectionsClientListBySubscriptionResponse contains the response from method NetworkConnectionsClient.NewListBySubscriptionPager.

type NetworkConnectionsClientListHealthDetailsOptions

type NetworkConnectionsClientListHealthDetailsOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

NetworkConnectionsClientListHealthDetailsOptions contains the optional parameters for the NetworkConnectionsClient.NewListHealthDetailsPager method.

type NetworkConnectionsClientListHealthDetailsResponse

type NetworkConnectionsClientListHealthDetailsResponse struct {
	// Paged collection of HealthCheckStatusDetails items
	HealthCheckStatusDetailsListResult
}

NetworkConnectionsClientListHealthDetailsResponse contains the response from method NetworkConnectionsClient.NewListHealthDetailsPager.

type NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsOptions

type NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsOptions contains the optional parameters for the NetworkConnectionsClient.NewListOutboundNetworkDependenciesEndpointsPager method.

type NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsResponse

type NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsResponse struct {
	// Values returned by the List operation.
	OutboundEnvironmentEndpointCollection
}

NetworkConnectionsClientListOutboundNetworkDependenciesEndpointsResponse contains the response from method NetworkConnectionsClient.NewListOutboundNetworkDependenciesEndpointsPager.

type NetworkConnectionsClientRunHealthChecksResponse

type NetworkConnectionsClientRunHealthChecksResponse struct {
}

NetworkConnectionsClientRunHealthChecksResponse contains the response from method NetworkConnectionsClient.BeginRunHealthChecks.

type NetworkConnectionsClientUpdateResponse

type NetworkConnectionsClientUpdateResponse struct {
	// Network related settings.
	NetworkConnection
}

NetworkConnectionsClientUpdateResponse contains the response from method NetworkConnectionsClient.BeginUpdate.

type NetworkProperties

type NetworkProperties struct {
	// REQUIRED; AAD Join type.
	DomainJoinType *DomainJoinType

	// Active Directory domain name.
	DomainName *string

	// The password for the account used to join domain.
	DomainPassword *string

	// The username of an Active Directory account (user or service account) that has permissions to create computer objects in
	// Active Directory. Required format: admin@contoso.com.
	DomainUsername *string

	// The name for resource group where NICs will be placed.
	NetworkingResourceGroupName *string

	// Active Directory domain Organization Unit (OU).
	OrganizationUnit *string

	// The subnet to attach Virtual Machines to.
	SubnetID *string

	// READ-ONLY; Overall health status of the network connection. Health checks are run on creation, update, and periodically
	// to validate the network connection.
	HealthCheckStatus *HealthCheckStatus

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

NetworkProperties - Network properties

func (NetworkProperties) MarshalJSON

func (n NetworkProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkProperties.

func (*NetworkProperties) UnmarshalJSON

func (n *NetworkProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkProperties.

type NetworkSettings

type NetworkSettings struct {
	// Indicates whether pools in this Dev Center can use Microsoft Hosted Networks. Defaults to Enabled if not set.
	MicrosoftHostedNetworkEnableStatus *MicrosoftHostedNetworkEnableStatus
}

NetworkSettings - Network settings for the Dev Center.

func (NetworkSettings) MarshalJSON

func (n NetworkSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type NetworkSettings.

func (*NetworkSettings) UnmarshalJSON

func (n *NetworkSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type NetworkSettings.

type Operation

type Operation struct {
	// Localized display information for this particular operation.
	Display *OperationDisplay

	// READ-ONLY; Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
	ActionType *ActionType

	// READ-ONLY; Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure
	// Resource Manager/control-plane operations.
	IsDataAction *bool

	// READ-ONLY; The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write",
	// "Microsoft.Compute/virtualMachines/capture/action"
	Name *string

	// READ-ONLY; The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default
	// value is "user,system"
	Origin *Origin
}

Operation - REST API Operation

Details of a REST API operation, returned from the Resource Provider Operations API

func (Operation) MarshalJSON

func (o Operation) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Operation.

func (*Operation) UnmarshalJSON

func (o *Operation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Operation.

type OperationDisplay

type OperationDisplay struct {
	// READ-ONLY; The short, localized friendly description of the operation; suitable for tool tips and detailed views.
	Description *string

	// READ-ONLY; The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual
	// Machine", "Restart Virtual Machine".
	Operation *string

	// READ-ONLY; The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft
	// Compute".
	Provider *string

	// READ-ONLY; The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job
	// Schedule Collections".
	Resource *string
}

OperationDisplay - Localized display information for an operation.

func (OperationDisplay) MarshalJSON

func (o OperationDisplay) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationDisplay.

func (*OperationDisplay) UnmarshalJSON

func (o *OperationDisplay) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay.

type OperationListResult

type OperationListResult struct {
	// REQUIRED; The Operation items on this page
	Value []*Operation

	// The link to the next page of items
	NextLink *string
}

OperationListResult - A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.

func (OperationListResult) MarshalJSON

func (o OperationListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationListResult.

func (*OperationListResult) UnmarshalJSON

func (o *OperationListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult.

type OperationStatus

type OperationStatus struct {
	// REQUIRED; Operation status.
	Status *string

	// The end time of the operation.
	EndTime *time.Time

	// If present, details of the operation error.
	Error *ErrorDetail

	// Fully qualified ID for the async operation.
	ID *string

	// Name of the async operation.
	Name *string

	// The operations list.
	Operations []*OperationStatusResult

	// Percent of the operation that is complete.
	PercentComplete *float64

	// The start time of the operation.
	StartTime *time.Time

	// READ-ONLY; Custom operation properties, populated only for a successful operation.
	Properties map[string]any

	// READ-ONLY; Fully qualified ID of the resource against which the original async operation was started.
	ResourceID *string
}

OperationStatus - The current status of an async operation

func (OperationStatus) MarshalJSON

func (o OperationStatus) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationStatus.

func (*OperationStatus) UnmarshalJSON

func (o *OperationStatus) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatus.

type OperationStatusResult

type OperationStatusResult struct {
	// REQUIRED; Operation status.
	Status *string

	// The end time of the operation.
	EndTime *time.Time

	// If present, details of the operation error.
	Error *ErrorDetail

	// Fully qualified ID for the async operation.
	ID *string

	// Name of the async operation.
	Name *string

	// The operations list.
	Operations []*OperationStatusResult

	// Percent of the operation that is complete.
	PercentComplete *float64

	// The start time of the operation.
	StartTime *time.Time

	// READ-ONLY; Fully qualified ID of the resource against which the original async operation was started.
	ResourceID *string
}

OperationStatusResult - The current status of an async operation.

func (OperationStatusResult) MarshalJSON

func (o OperationStatusResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OperationStatusResult.

func (*OperationStatusResult) UnmarshalJSON

func (o *OperationStatusResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatusResult.

type OperationStatusesClient

type OperationStatusesClient struct {
	// contains filtered or unexported fields
}

OperationStatusesClient contains the methods for the OperationStatuses group. Don't use this type directly, use NewOperationStatusesClient() instead.

Generated from API version 2026-01-01-preview

func NewOperationStatusesClient

func NewOperationStatusesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationStatusesClient, error)

NewOperationStatusesClient creates a new instance of OperationStatusesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*OperationStatusesClient) Get

Get - Get Operation Status

Gets the current status of an async operation. If the operation fails it returns an *azcore.ResponseError type.

  • location - The name of the Azure region.
  • operationID - The ID of an ongoing async operation.
  • options - OperationStatusesClientGetOptions contains the optional parameters for the OperationStatusesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/OperationStatus_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewOperationStatusesClient().Get(ctx, "westus3", "3fa1a29d-e807-488d-81d1-f1c5456a08cd", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.OperationStatusesClientGetResponse{
	// 	OperationStatus: armdevcenter.OperationStatus{
	// 		EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-12-01T15:16:55.100Z"); return t}()),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/providers/Microsoft.DevCenter/locations/CENTRALUS/operationStatuses/722e7bc4-60fa-4e6b-864f-d5bf12b9adc4"),
	// 		PercentComplete: to.Ptr[float64](100),
	// 		StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-12-01T15:16:29.500Z"); return t}()),
	// 		Status: to.Ptr("Succeeded"),
	// 	},
	// }
}

type OperationStatusesClientGetOptions

type OperationStatusesClientGetOptions struct {
}

OperationStatusesClientGetOptions contains the optional parameters for the OperationStatusesClient.Get method.

type OperationStatusesClientGetResponse

type OperationStatusesClientGetResponse struct {
	// The current status of an async operation
	OperationStatus

	// The Location header contains the URL where the status of the long running operation can be checked.
	Location *string
}

OperationStatusesClientGetResponse contains the response from method OperationStatusesClient.Get.

type OperationsClient

type OperationsClient struct {
	// contains filtered or unexported fields
}

OperationsClient contains the methods for the Operations group. Don't use this type directly, use NewOperationsClient() instead.

Generated from API version 2026-01-01-preview

func NewOperationsClient

func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error)

NewOperationsClient creates a new instance of OperationsClient with the specified values.

  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*OperationsClient) NewListPager

NewListPager - List the operations for the provider

  • options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.
Example

Generated from example definition: 2026-01-01-preview/Operations_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("<subscriptionID>", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewOperationsClient().NewListPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.OperationsClientListResponse{
		// 	OperationListResult: armdevcenter.OperationListResult{
		// 		Value: []*armdevcenter.Operation{
		// 			{
		// 				Name: to.Ptr("Microsoft.DevCenter/devcenters/write"),
		// 				Display: &armdevcenter.OperationDisplay{
		// 					Operation: to.Ptr("write"),
		// 					Provider: to.Ptr("Microsoft DevTest Center"),
		// 					Resource: to.Ptr("Microsoft DevTest Center devcenter resource"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type OperationsClientListOptions

type OperationsClientListOptions struct {
}

OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method.

type OperationsClientListResponse

type OperationsClientListResponse struct {
	// A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results.
	OperationListResult
}

OperationsClientListResponse contains the response from method OperationsClient.NewListPager.

type Origin

type Origin string

Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system"

const (
	// OriginSystem - Indicates the operation is initiated by a system.
	OriginSystem Origin = "system"
	// OriginUser - Indicates the operation is initiated by a user.
	OriginUser Origin = "user"
	// OriginUserSystem - Indicates the operation is initiated by a user or system.
	OriginUserSystem Origin = "user,system"
)

func PossibleOriginValues

func PossibleOriginValues() []Origin

PossibleOriginValues returns the possible values for the Origin const type.

type OutboundEnvironmentEndpoint

type OutboundEnvironmentEndpoint struct {
	// READ-ONLY; The type of service that the agent connects to.
	Category *string

	// READ-ONLY; The endpoints for this service for which the agent requires outbound access.
	Endpoints []*EndpointDependency
}

OutboundEnvironmentEndpoint - A collection of related endpoints from the same service for which the agent requires outbound access.

func (OutboundEnvironmentEndpoint) MarshalJSON

func (o OutboundEnvironmentEndpoint) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OutboundEnvironmentEndpoint.

func (*OutboundEnvironmentEndpoint) UnmarshalJSON

func (o *OutboundEnvironmentEndpoint) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OutboundEnvironmentEndpoint.

type OutboundEnvironmentEndpointCollection

type OutboundEnvironmentEndpointCollection struct {
	// READ-ONLY; The OutboundEnvironmentEndpoint items on this page
	Value []*OutboundEnvironmentEndpoint

	// The link to the next page of items
	NextLink *string
}

OutboundEnvironmentEndpointCollection - Values returned by the List operation.

func (OutboundEnvironmentEndpointCollection) MarshalJSON

func (o OutboundEnvironmentEndpointCollection) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type OutboundEnvironmentEndpointCollection.

func (*OutboundEnvironmentEndpointCollection) UnmarshalJSON

func (o *OutboundEnvironmentEndpointCollection) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type OutboundEnvironmentEndpointCollection.

type ParameterType

type ParameterType string

ParameterType - The type of data a parameter accepts.

const (
	// ParameterTypeArray - The parameter accepts an array of values.
	ParameterTypeArray ParameterType = "array"
	// ParameterTypeBoolean - The parameter accepts a boolean value.
	ParameterTypeBoolean ParameterType = "boolean"
	// ParameterTypeInteger - The parameter accepts an integer value.
	ParameterTypeInteger ParameterType = "integer"
	// ParameterTypeNumber - The parameter accepts a number value.
	ParameterTypeNumber ParameterType = "number"
	// ParameterTypeObject - The parameter accepts an object value.
	ParameterTypeObject ParameterType = "object"
	// ParameterTypeString - The parameter accepts a string value.
	ParameterTypeString ParameterType = "string"
)

func PossibleParameterTypeValues

func PossibleParameterTypeValues() []ParameterType

PossibleParameterTypeValues returns the possible values for the ParameterType const type.

type PolicyAction

type PolicyAction string

PolicyAction - Indicates what action to perform for the policy.

const (
	// PolicyActionAllow - Allow action for the policy.
	PolicyActionAllow PolicyAction = "Allow"
	// PolicyActionDeny - Deny action for the policy.
	PolicyActionDeny PolicyAction = "Deny"
)

func PossiblePolicyActionValues

func PossiblePolicyActionValues() []PolicyAction

PossiblePolicyActionValues returns the possible values for the PolicyAction const type.

type Pool

type Pool struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Pool properties
	Properties *PoolProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Pool - A pool of Virtual Machines.

func (Pool) MarshalJSON

func (p Pool) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Pool.

func (*Pool) UnmarshalJSON

func (p *Pool) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Pool.

type PoolDevBoxDefinition

type PoolDevBoxDefinition struct {
	// Image reference information.
	ImageReference *ImageReference

	// The SKU for Dev Boxes created from the Pool.
	SKU *SKU

	// READ-ONLY; Image reference information for the currently active image (only populated during updates).
	ActiveImageReference *ImageReference
}

PoolDevBoxDefinition - Represents a definition for a Developer Machine.

func (PoolDevBoxDefinition) MarshalJSON

func (p PoolDevBoxDefinition) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PoolDevBoxDefinition.

func (*PoolDevBoxDefinition) UnmarshalJSON

func (p *PoolDevBoxDefinition) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PoolDevBoxDefinition.

type PoolDevBoxDefinitionType

type PoolDevBoxDefinitionType string

PoolDevBoxDefinitionType - Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly.

const (
	// PoolDevBoxDefinitionTypeReference - Indicates the pool is created from an existing Dev Box definition.
	PoolDevBoxDefinitionTypeReference PoolDevBoxDefinitionType = "Reference"
	// PoolDevBoxDefinitionTypeValue - Indicates the pool is created from a Dev Box definition that's created from an image reference
	// and a SKU directly. This is used for creating an image definition pool or an image pool.
	PoolDevBoxDefinitionTypeValue PoolDevBoxDefinitionType = "Value"
)

func PossiblePoolDevBoxDefinitionTypeValues

func PossiblePoolDevBoxDefinitionTypeValues() []PoolDevBoxDefinitionType

PossiblePoolDevBoxDefinitionTypeValues returns the possible values for the PoolDevBoxDefinitionType const type.

type PoolListResult

type PoolListResult struct {
	// READ-ONLY; The Pool items on this page
	Value []*Pool

	// The link to the next page of items
	NextLink *string
}

PoolListResult - Paged collection of Pool items

func (PoolListResult) MarshalJSON

func (p PoolListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PoolListResult.

func (*PoolListResult) UnmarshalJSON

func (p *PoolListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PoolListResult.

type PoolProperties

type PoolProperties struct {
	// Active hours configuration settings for Dev Boxes created in this pool.
	ActiveHoursConfiguration *ActiveHoursConfiguration

	// A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not
	// provided.
	DevBoxDefinition *PoolDevBoxDefinition

	// Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value.
	DevBoxDefinitionName *string

	// Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly.
	DevBoxDefinitionType *PoolDevBoxDefinitionType

	// Indicates whether Dev Box Tunnel is enabled for a the pool.
	DevBoxTunnelEnableStatus *DevBoxTunnelEnableStatus

	// The display name of the pool.
	DisplayName *string

	// Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created.
	LicenseType *LicenseType

	// Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box.
	LocalAdministrator *LocalAdminStatus

	// The regions of the managed virtual network (required when managedNetworkType is Managed).
	ManagedVirtualNetworkRegions []*string

	// Name of a Network Connection in parent Project of this Pool.
	NetworkConnectionName *string

	// Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on
	// be enabled on the tenant.
	SingleSignOnStatus *SingleSignOnStatus

	// Stop on disconnect configuration settings for Dev Boxes created in this pool.
	StopOnDisconnect *StopOnDisconnectConfiguration

	// Stop on no connect configuration settings for Dev Boxes created in this pool.
	StopOnNoConnect *StopOnNoConnectConfiguration

	// Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network.
	VirtualNetworkType *VirtualNetworkType

	// READ-ONLY; Indicates the number of provisioned Dev Boxes in this pool.
	DevBoxCount *int32

	// READ-ONLY; Overall health status of the Pool. Indicates whether or not the Pool is available to create Dev Boxes.
	HealthStatus *HealthStatus

	// READ-ONLY; Details on the Pool health status to help diagnose issues. This is only populated when the pool status indicates
	// the pool is in a non-healthy state
	HealthStatusDetails []*HealthStatusDetail

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

PoolProperties - Properties of a Pool.

func (PoolProperties) MarshalJSON

func (p PoolProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PoolProperties.

func (*PoolProperties) UnmarshalJSON

func (p *PoolProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PoolProperties.

type PoolUpdate

type PoolUpdate struct {
	// The geo-location where the resource lives.
	Location *string

	// Properties of a pool to be updated.
	Properties *PoolUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

PoolUpdate - The pool properties for partial update. Properties not provided in the update request will not be changed.

func (PoolUpdate) MarshalJSON

func (p PoolUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PoolUpdate.

func (*PoolUpdate) UnmarshalJSON

func (p *PoolUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PoolUpdate.

type PoolUpdateProperties

type PoolUpdateProperties struct {
	// Active hours configuration settings for Dev Boxes created in this pool.
	ActiveHoursConfiguration *ActiveHoursConfiguration

	// A definition of the machines that are created from this Pool. Will be ignored if devBoxDefinitionType is Reference or not
	// provided.
	DevBoxDefinition *PoolDevBoxDefinition

	// Name of a Dev Box definition in parent Project of this Pool. Will be ignored if devBoxDefinitionType is Value.
	DevBoxDefinitionName *string

	// Indicates if the pool is created from an existing Dev Box Definition or if one is provided directly.
	DevBoxDefinitionType *PoolDevBoxDefinitionType

	// Indicates whether Dev Box Tunnel is enabled for a the pool.
	DevBoxTunnelEnableStatus *DevBoxTunnelEnableStatus

	// The display name of the pool.
	DisplayName *string

	// Specifies the license type indicating the caller has already acquired licenses for the Dev Boxes that will be created.
	LicenseType *LicenseType

	// Indicates whether owners of Dev Boxes in this pool are added as local administrators on the Dev Box.
	LocalAdministrator *LocalAdminStatus

	// The regions of the managed virtual network (required when managedNetworkType is Managed).
	ManagedVirtualNetworkRegions []*string

	// Name of a Network Connection in parent Project of this Pool.
	NetworkConnectionName *string

	// Indicates whether Dev Boxes in this pool are created with single sign on enabled. The also requires that single sign on
	// be enabled on the tenant.
	SingleSignOnStatus *SingleSignOnStatus

	// Stop on disconnect configuration settings for Dev Boxes created in this pool.
	StopOnDisconnect *StopOnDisconnectConfiguration

	// Stop on no connect configuration settings for Dev Boxes created in this pool.
	StopOnNoConnect *StopOnNoConnectConfiguration

	// Indicates whether the pool uses a Virtual Network managed by Microsoft or a customer provided network.
	VirtualNetworkType *VirtualNetworkType
}

PoolUpdateProperties - Properties of a Pool. These properties can be updated after the resource has been created.

func (PoolUpdateProperties) MarshalJSON

func (p PoolUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type PoolUpdateProperties.

func (*PoolUpdateProperties) UnmarshalJSON

func (p *PoolUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type PoolUpdateProperties.

type PoolsClient

type PoolsClient struct {
	// contains filtered or unexported fields
}

PoolsClient contains the methods for the Pools group. Don't use this type directly, use NewPoolsClient() instead.

Generated from API version 2026-01-01-preview

func NewPoolsClient

func NewPoolsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PoolsClient, error)

NewPoolsClient creates a new instance of PoolsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*PoolsClient) BeginCreateOrUpdate

func (client *PoolsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, projectName string, poolName string, body Pool, options *PoolsClientBeginCreateOrUpdateOptions) (*runtime.Poller[PoolsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a machine pool. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • body - Represents a machine pool
  • options - PoolsClientBeginCreateOrUpdateOptions contains the optional parameters for the PoolsClient.BeginCreateOrUpdate method.
Example (PoolsCreateOrUpdate)

Generated from example definition: 2026-01-01-preview/Pools_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "DevPool", armdevcenter.Pool{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.PoolProperties{
			ActiveHoursConfiguration: &armdevcenter.ActiveHoursConfiguration{
				AutoStartEnableStatus: to.Ptr(armdevcenter.AutoStartEnableStatusEnabled),
				DaysOfWeekLimit:       to.Ptr[int32](5),
				DefaultDaysOfWeek: []*armdevcenter.DayOfWeek{
					to.Ptr(armdevcenter.DayOfWeekMonday),
					to.Ptr(armdevcenter.DayOfWeekTuesday),
					to.Ptr(armdevcenter.DayOfWeekWednesday),
					to.Ptr(armdevcenter.DayOfWeekThursday),
					to.Ptr(armdevcenter.DayOfWeekFriday),
				},
				DefaultEndTimeHour:    to.Ptr[int32](17),
				DefaultStartTimeHour:  to.Ptr[int32](9),
				DefaultTimeZone:       to.Ptr("America/Los_Angeles"),
				KeepAwakeEnableStatus: to.Ptr(armdevcenter.KeepAwakeEnableStatusEnabled),
			},
			DevBoxDefinitionName:  to.Ptr("WebDevBox"),
			DisplayName:           to.Ptr("Developer Pool"),
			LicenseType:           to.Ptr(armdevcenter.LicenseTypeWindowsClient),
			LocalAdministrator:    to.Ptr(armdevcenter.LocalAdminStatusEnabled),
			NetworkConnectionName: to.Ptr("Network1-westus2"),
			SingleSignOnStatus:    to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](60),
				Status:             to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
			},
			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](120),
				Status:             to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
			},
			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeUnmanaged),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientCreateOrUpdateResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			ActiveHoursConfiguration: &armdevcenter.ActiveHoursConfiguration{
	// 				AutoStartEnableStatus: to.Ptr(armdevcenter.AutoStartEnableStatusEnabled),
	// 				DaysOfWeekLimit: to.Ptr[int32](5),
	// 				DefaultDaysOfWeek: []*armdevcenter.DayOfWeek{
	// 					to.Ptr(armdevcenter.DayOfWeekMonday),
	// 					to.Ptr(armdevcenter.DayOfWeekTuesday),
	// 					to.Ptr(armdevcenter.DayOfWeekWednesday),
	// 					to.Ptr(armdevcenter.DayOfWeekThursday),
	// 					to.Ptr(armdevcenter.DayOfWeekFriday),
	// 				},
	// 				DefaultEndTimeHour: to.Ptr[int32](17),
	// 				DefaultStartTimeHour: to.Ptr[int32](9),
	// 				DefaultTimeZone: to.Ptr("America/Los_Angeles"),
	// 				KeepAwakeEnableStatus: to.Ptr(armdevcenter.KeepAwakeEnableStatusEnabled),
	// 			},
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinitionName: to.Ptr("WebDevBox"),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 			},
	// 			NetworkConnectionName: to.Ptr("Network1-westus2"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeUnmanaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}
Example (PoolsCreateOrUpdateWithManagedNetwork)

Generated from example definition: 2026-01-01-preview/Pools_PutWithManagedNetwork.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "DevPool", armdevcenter.Pool{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.PoolProperties{
			DevBoxDefinitionName: to.Ptr("WebDevBox"),
			DisplayName:          to.Ptr("Developer Pool"),
			LicenseType:          to.Ptr(armdevcenter.LicenseTypeWindowsClient),
			LocalAdministrator:   to.Ptr(armdevcenter.LocalAdminStatusEnabled),
			ManagedVirtualNetworkRegions: []*string{
				to.Ptr("centralus"),
			},
			NetworkConnectionName: to.Ptr("managedNetwork"),
			SingleSignOnStatus:    to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](60),
				Status:             to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
			},
			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](120),
				Status:             to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
			},
			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientCreateOrUpdateResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinitionName: to.Ptr("WebDevBox"),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 				to.Ptr("centralus"),
	// 			},
	// 			NetworkConnectionName: to.Ptr("managedNetwork"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}
Example (PoolsCreateOrUpdateWithValueDevBoxDefinition)

Generated from example definition: 2026-01-01-preview/Pools_PutWithValueDevBoxDefinition.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "DevPool", armdevcenter.Pool{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.PoolProperties{
			DevBoxDefinition: &armdevcenter.PoolDevBoxDefinition{
				ImageReference: &armdevcenter.ImageReference{
					ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/projects/DevProject/images/exampleImage/version/1.0.0"),
				},
				SKU: &armdevcenter.SKU{
					Name: to.Ptr("Preview"),
				},
			},
			DevBoxDefinitionName:  to.Ptr(""),
			DevBoxDefinitionType:  to.Ptr(armdevcenter.PoolDevBoxDefinitionTypeValue),
			DisplayName:           to.Ptr("Developer Pool"),
			LicenseType:           to.Ptr(armdevcenter.LicenseTypeWindowsClient),
			LocalAdministrator:    to.Ptr(armdevcenter.LocalAdminStatusEnabled),
			NetworkConnectionName: to.Ptr("Network1-westus2"),
			SingleSignOnStatus:    to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](60),
				Status:             to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
			},
			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
				GracePeriodMinutes: to.Ptr[int32](120),
				Status:             to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
			},
			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeUnmanaged),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientCreateOrUpdateResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinition: &armdevcenter.PoolDevBoxDefinition{
	// 				ImageReference: &armdevcenter.ImageReference{
	// 					ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/projects/DevProject/images/exampleImage/version/1.0.0"),
	// 				},
	// 				SKU: &armdevcenter.SKU{
	// 					Name: to.Ptr("Preview"),
	// 				},
	// 			},
	// 			DevBoxDefinitionName: to.Ptr(""),
	// 			DevBoxDefinitionType: to.Ptr(armdevcenter.PoolDevBoxDefinitionTypeValue),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 			},
	// 			NetworkConnectionName: to.Ptr("Network1-westus2"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeUnmanaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*PoolsClient) BeginDelete

func (client *PoolsClient) BeginDelete(ctx context.Context, resourceGroupName string, projectName string, poolName string, options *PoolsClientBeginDeleteOptions) (*runtime.Poller[PoolsClientDeleteResponse], error)

BeginDelete - Deletes a machine pool. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • options - PoolsClientBeginDeleteOptions contains the optional parameters for the PoolsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/Pools_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginDelete(ctx, "rg1", "DevProject", "poolName", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*PoolsClient) BeginRunHealthChecks

func (client *PoolsClient) BeginRunHealthChecks(ctx context.Context, resourceGroupName string, projectName string, poolName string, options *PoolsClientBeginRunHealthChecksOptions) (*runtime.Poller[PoolsClientRunHealthChecksResponse], error)

BeginRunHealthChecks - Triggers a refresh of the pool status. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • options - PoolsClientBeginRunHealthChecksOptions contains the optional parameters for the PoolsClient.BeginRunHealthChecks method.
Example

Generated from example definition: 2026-01-01-preview/Pools_RunHealthChecks.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginRunHealthChecks(ctx, "rg1", "DevProject", "DevPool", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*PoolsClient) BeginUpdate

func (client *PoolsClient) BeginUpdate(ctx context.Context, resourceGroupName string, projectName string, poolName string, body PoolUpdate, options *PoolsClientBeginUpdateOptions) (*runtime.Poller[PoolsClientUpdateResponse], error)

BeginUpdate - Partially updates a machine pool. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • body - Represents a machine pool
  • options - PoolsClientBeginUpdateOptions contains the optional parameters for the PoolsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Pools_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewPoolsClient().BeginUpdate(ctx, "rg1", "DevProject", "DevPool", armdevcenter.PoolUpdate{
		Properties: &armdevcenter.PoolUpdateProperties{
			DevBoxDefinitionName: to.Ptr("WebDevBox2"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientUpdateResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinitionName: to.Ptr("WebDevBox2"),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 				to.Ptr("centralus"),
	// 			},
	// 			NetworkConnectionName: to.Ptr("Network1-westus2"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*PoolsClient) Get

func (client *PoolsClient) Get(ctx context.Context, resourceGroupName string, projectName string, poolName string, options *PoolsClientGetOptions) (PoolsClientGetResponse, error)

Get - Gets a machine pool. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • options - PoolsClientGetOptions contains the optional parameters for the PoolsClient.Get method.
Example (PoolsGet)

Generated from example definition: 2026-01-01-preview/Pools_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewPoolsClient().Get(ctx, "rg1", "DevProject", "DevPool", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientGetResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			ActiveHoursConfiguration: &armdevcenter.ActiveHoursConfiguration{
	// 				AutoStartEnableStatus: to.Ptr(armdevcenter.AutoStartEnableStatusEnabled),
	// 				DaysOfWeekLimit: to.Ptr[int32](5),
	// 				DefaultDaysOfWeek: []*armdevcenter.DayOfWeek{
	// 					to.Ptr(armdevcenter.DayOfWeekMonday),
	// 					to.Ptr(armdevcenter.DayOfWeekTuesday),
	// 					to.Ptr(armdevcenter.DayOfWeekWednesday),
	// 					to.Ptr(armdevcenter.DayOfWeekThursday),
	// 					to.Ptr(armdevcenter.DayOfWeekFriday),
	// 				},
	// 				DefaultEndTimeHour: to.Ptr[int32](17),
	// 				DefaultStartTimeHour: to.Ptr[int32](9),
	// 				DefaultTimeZone: to.Ptr("America/Los_Angeles"),
	// 				KeepAwakeEnableStatus: to.Ptr(armdevcenter.KeepAwakeEnableStatusEnabled),
	// 			},
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinitionName: to.Ptr("WebDevBox"),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 				to.Ptr("centralus"),
	// 			},
	// 			NetworkConnectionName: to.Ptr("Network1-westus2"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}
Example (PoolsGetUnhealthyStatus)

Generated from example definition: 2026-01-01-preview/Pools_GetUnhealthyStatus.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewPoolsClient().Get(ctx, "rg1", "DevProject", "DevPool", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.PoolsClientGetResponse{
	// 	Pool: armdevcenter.Pool{
	// 		Name: to.Ptr("DevPool"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.PoolProperties{
	// 			DevBoxCount: to.Ptr[int32](1),
	// 			DevBoxDefinitionName: to.Ptr("WebDevBox"),
	// 			DisplayName: to.Ptr("Developer Pool"),
	// 			HealthStatus: to.Ptr(armdevcenter.HealthStatusUnhealthy),
	// 			HealthStatusDetails: []*armdevcenter.HealthStatusDetail{
	// 				{
	// 					Code: to.Ptr("NetworkConnectionUnhealthy"),
	// 					Message: to.Ptr("The Pool's Network Connection is in an unhealthy state. Check the Network Connection's health status for more details."),
	// 				},
	// 				{
	// 					Code: to.Ptr("ImageValidationFailed"),
	// 					Message: to.Ptr("Image validation has failed. Check the Dev Box Definition's image validation status for more details."),
	// 				},
	// 				{
	// 					Code: to.Ptr("IntuneValidationFailed"),
	// 					Message: to.Ptr("Intune license validation has failed. The tenant does not have a valid Intune license."),
	// 				},
	// 			},
	// 			LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
	// 			LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
	// 			ManagedVirtualNetworkRegions: []*string{
	// 				to.Ptr("centralus"),
	// 			},
	// 			NetworkConnectionName: to.Ptr("Network1-westus2"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
	// 			StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](60),
	// 				Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
	// 			},
	// 			StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
	// 				GracePeriodMinutes: to.Ptr[int32](120),
	// 				Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
	// 			},
	// 			VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*PoolsClient) NewListByProjectPager

func (client *PoolsClient) NewListByProjectPager(resourceGroupName string, projectName string, options *PoolsClientListByProjectOptions) *runtime.Pager[PoolsClientListByProjectResponse]

NewListByProjectPager - Lists pools for a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - PoolsClientListByProjectOptions contains the optional parameters for the PoolsClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/Pools_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewPoolsClient().NewListByProjectPager("rg1", "DevProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.PoolsClientListByProjectResponse{
		// 	PoolListResult: armdevcenter.PoolListResult{
		// 		Value: []*armdevcenter.Pool{
		// 			{
		// 				Name: to.Ptr("DevPool"),
		// 				Type: to.Ptr("Microsoft.DevCenter/pools"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/pools/DevPool"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.PoolProperties{
		// 					ActiveHoursConfiguration: &armdevcenter.ActiveHoursConfiguration{
		// 						AutoStartEnableStatus: to.Ptr(armdevcenter.AutoStartEnableStatusEnabled),
		// 						DaysOfWeekLimit: to.Ptr[int32](5),
		// 						DefaultDaysOfWeek: []*armdevcenter.DayOfWeek{
		// 							to.Ptr(armdevcenter.DayOfWeekMonday),
		// 							to.Ptr(armdevcenter.DayOfWeekTuesday),
		// 							to.Ptr(armdevcenter.DayOfWeekWednesday),
		// 							to.Ptr(armdevcenter.DayOfWeekThursday),
		// 							to.Ptr(armdevcenter.DayOfWeekFriday),
		// 						},
		// 						DefaultEndTimeHour: to.Ptr[int32](17),
		// 						DefaultStartTimeHour: to.Ptr[int32](9),
		// 						DefaultTimeZone: to.Ptr("America/Los_Angeles"),
		// 						KeepAwakeEnableStatus: to.Ptr(armdevcenter.KeepAwakeEnableStatusEnabled),
		// 					},
		// 					DevBoxCount: to.Ptr[int32](1),
		// 					DevBoxDefinitionName: to.Ptr("WebDevBox"),
		// 					DisplayName: to.Ptr("Developer Pool"),
		// 					HealthStatus: to.Ptr(armdevcenter.HealthStatusHealthy),
		// 					LicenseType: to.Ptr(armdevcenter.LicenseTypeWindowsClient),
		// 					LocalAdministrator: to.Ptr(armdevcenter.LocalAdminStatusEnabled),
		// 					ManagedVirtualNetworkRegions: []*string{
		// 						to.Ptr("centralus"),
		// 					},
		// 					NetworkConnectionName: to.Ptr("Network1-westus2"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SingleSignOnStatus: to.Ptr(armdevcenter.SingleSignOnStatusDisabled),
		// 					StopOnDisconnect: &armdevcenter.StopOnDisconnectConfiguration{
		// 						GracePeriodMinutes: to.Ptr[int32](60),
		// 						Status: to.Ptr(armdevcenter.StopOnDisconnectEnableStatusEnabled),
		// 					},
		// 					StopOnNoConnect: &armdevcenter.StopOnNoConnectConfiguration{
		// 						GracePeriodMinutes: to.Ptr[int32](120),
		// 						Status: to.Ptr(armdevcenter.StopOnNoConnectEnableStatusEnabled),
		// 					},
		// 					VirtualNetworkType: to.Ptr(armdevcenter.VirtualNetworkTypeManaged),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type PoolsClientBeginCreateOrUpdateOptions

type PoolsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

PoolsClientBeginCreateOrUpdateOptions contains the optional parameters for the PoolsClient.BeginCreateOrUpdate method.

type PoolsClientBeginDeleteOptions

type PoolsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

PoolsClientBeginDeleteOptions contains the optional parameters for the PoolsClient.BeginDelete method.

type PoolsClientBeginRunHealthChecksOptions

type PoolsClientBeginRunHealthChecksOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

PoolsClientBeginRunHealthChecksOptions contains the optional parameters for the PoolsClient.BeginRunHealthChecks method.

type PoolsClientBeginUpdateOptions

type PoolsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

PoolsClientBeginUpdateOptions contains the optional parameters for the PoolsClient.BeginUpdate method.

type PoolsClientCreateOrUpdateResponse

type PoolsClientCreateOrUpdateResponse struct {
	// A pool of Virtual Machines.
	Pool
}

PoolsClientCreateOrUpdateResponse contains the response from method PoolsClient.BeginCreateOrUpdate.

type PoolsClientDeleteResponse

type PoolsClientDeleteResponse struct {
}

PoolsClientDeleteResponse contains the response from method PoolsClient.BeginDelete.

type PoolsClientGetOptions

type PoolsClientGetOptions struct {
}

PoolsClientGetOptions contains the optional parameters for the PoolsClient.Get method.

type PoolsClientGetResponse

type PoolsClientGetResponse struct {
	// A pool of Virtual Machines.
	Pool
}

PoolsClientGetResponse contains the response from method PoolsClient.Get.

type PoolsClientListByProjectOptions

type PoolsClientListByProjectOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

PoolsClientListByProjectOptions contains the optional parameters for the PoolsClient.NewListByProjectPager method.

type PoolsClientListByProjectResponse

type PoolsClientListByProjectResponse struct {
	// Paged collection of Pool items
	PoolListResult
}

PoolsClientListByProjectResponse contains the response from method PoolsClient.NewListByProjectPager.

type PoolsClientRunHealthChecksResponse

type PoolsClientRunHealthChecksResponse struct {
}

PoolsClientRunHealthChecksResponse contains the response from method PoolsClient.BeginRunHealthChecks.

type PoolsClientUpdateResponse

type PoolsClientUpdateResponse struct {
	// A pool of Virtual Machines.
	Pool
}

PoolsClientUpdateResponse contains the response from method PoolsClient.BeginUpdate.

type Project

type Project struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// Properties of a project.
	Properties *ProjectProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Project - Represents a project resource.

func (Project) MarshalJSON

func (p Project) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Project.

func (*Project) UnmarshalJSON

func (p *Project) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Project.

type ProjectAllowedEnvironmentTypesClient

type ProjectAllowedEnvironmentTypesClient struct {
	// contains filtered or unexported fields
}

ProjectAllowedEnvironmentTypesClient contains the methods for the ProjectAllowedEnvironmentTypes group. Don't use this type directly, use NewProjectAllowedEnvironmentTypesClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectAllowedEnvironmentTypesClient

func NewProjectAllowedEnvironmentTypesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectAllowedEnvironmentTypesClient, error)

NewProjectAllowedEnvironmentTypesClient creates a new instance of ProjectAllowedEnvironmentTypesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectAllowedEnvironmentTypesClient) Get

Get - Gets an allowed environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • environmentTypeName - The name of the environment type.
  • options - ProjectAllowedEnvironmentTypesClientGetOptions contains the optional parameters for the ProjectAllowedEnvironmentTypesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ProjectAllowedEnvironmentTypes_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectAllowedEnvironmentTypesClient().Get(ctx, "rg1", "Contoso", "DevTest", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectAllowedEnvironmentTypesClientGetResponse{
	// 	AllowedEnvironmentType: armdevcenter.AllowedEnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/allowedenvironmenttypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/Contoso/allowedEnvironmentTypes/DevTest"),
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectAllowedEnvironmentTypesClient) NewListPager

NewListPager - Lists allowed environment types for a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectAllowedEnvironmentTypesClientListOptions contains the optional parameters for the ProjectAllowedEnvironmentTypesClient.NewListPager method.
Example

Generated from example definition: 2026-01-01-preview/ProjectAllowedEnvironmentTypes_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectAllowedEnvironmentTypesClient().NewListPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectAllowedEnvironmentTypesClientListResponse{
		// 	AllowedEnvironmentTypeListResult: armdevcenter.AllowedEnvironmentTypeListResult{
		// 		Value: []*armdevcenter.AllowedEnvironmentType{
		// 			{
		// 				Name: to.Ptr("DevTest"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/allowedenvironmenttypes"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/Contoso/allowedEnvironmentTypes/DevTest"),
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1@contoso.com"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1@contoso.com"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectAllowedEnvironmentTypesClientGetOptions

type ProjectAllowedEnvironmentTypesClientGetOptions struct {
}

ProjectAllowedEnvironmentTypesClientGetOptions contains the optional parameters for the ProjectAllowedEnvironmentTypesClient.Get method.

type ProjectAllowedEnvironmentTypesClientGetResponse

type ProjectAllowedEnvironmentTypesClientGetResponse struct {
	// Represents an allowed environment type.
	AllowedEnvironmentType
}

ProjectAllowedEnvironmentTypesClientGetResponse contains the response from method ProjectAllowedEnvironmentTypesClient.Get.

type ProjectAllowedEnvironmentTypesClientListOptions

type ProjectAllowedEnvironmentTypesClientListOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectAllowedEnvironmentTypesClientListOptions contains the optional parameters for the ProjectAllowedEnvironmentTypesClient.NewListPager method.

type ProjectAllowedEnvironmentTypesClientListResponse

type ProjectAllowedEnvironmentTypesClientListResponse struct {
	// Paged collection of AllowedEnvironmentType items
	AllowedEnvironmentTypeListResult
}

ProjectAllowedEnvironmentTypesClientListResponse contains the response from method ProjectAllowedEnvironmentTypesClient.NewListPager.

type ProjectCatalogEnvironmentDefinitionsClient

type ProjectCatalogEnvironmentDefinitionsClient struct {
	// contains filtered or unexported fields
}

ProjectCatalogEnvironmentDefinitionsClient contains the methods for the ProjectCatalogEnvironmentDefinitions group. Don't use this type directly, use NewProjectCatalogEnvironmentDefinitionsClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectCatalogEnvironmentDefinitionsClient

func NewProjectCatalogEnvironmentDefinitionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectCatalogEnvironmentDefinitionsClient, error)

NewProjectCatalogEnvironmentDefinitionsClient creates a new instance of ProjectCatalogEnvironmentDefinitionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectCatalogEnvironmentDefinitionsClient) GetErrorDetails

GetErrorDetails - Gets Environment Definition error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • environmentDefinitionName - The name of the Environment Definition.
  • options - ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the ProjectCatalogEnvironmentDefinitionsClient.GetErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogEnvironmentDefinitions_GetErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogEnvironmentDefinitionsClient().GetErrorDetails(ctx, "rg1", "DevProject", "myCatalog", "myEnvironmentDefinition", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsResponse{
	// 	CatalogResourceValidationErrorDetails: armdevcenter.CatalogResourceValidationErrorDetails{
	// 		Errors: []*armdevcenter.CatalogErrorDetails{
	// 			{
	// 				Code: to.Ptr("ParameterValueInvalid"),
	// 				Message: to.Ptr("Expected parameter value for 'InstanceCount' to be integer but found the string 'test'."),
	// 			},
	// 		},
	// 	},
	// }
}

type ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsOptions

type ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsOptions struct {
}

ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the ProjectCatalogEnvironmentDefinitionsClient.GetErrorDetails method.

type ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsResponse

type ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsResponse struct {
	// List of validator error details. Populated when changes are made to the resource or its dependent resources that impact
	// the validity of the Catalog resource.
	CatalogResourceValidationErrorDetails
}

ProjectCatalogEnvironmentDefinitionsClientGetErrorDetailsResponse contains the response from method ProjectCatalogEnvironmentDefinitionsClient.GetErrorDetails.

type ProjectCatalogImageDefinitionBuildClient

type ProjectCatalogImageDefinitionBuildClient struct {
	// contains filtered or unexported fields
}

ProjectCatalogImageDefinitionBuildClient contains the methods for the ProjectCatalogImageDefinitionBuild group. Don't use this type directly, use NewProjectCatalogImageDefinitionBuildClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectCatalogImageDefinitionBuildClient

func NewProjectCatalogImageDefinitionBuildClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectCatalogImageDefinitionBuildClient, error)

NewProjectCatalogImageDefinitionBuildClient creates a new instance of ProjectCatalogImageDefinitionBuildClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectCatalogImageDefinitionBuildClient) BeginCancel

BeginCancel - Cancels the specified build for an image definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - ProjectCatalogImageDefinitionBuildClientBeginCancelOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.BeginCancel method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_CancelImageBuild.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogImageDefinitionBuildClient().BeginCancel(ctx, "rg1", "DevProject", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectCatalogImageDefinitionBuildClient) Get

Get - Gets a build for a specified image definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - ProjectCatalogImageDefinitionBuildClientGetOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_GetImageBuild.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogImageDefinitionBuildClient().Get(ctx, "rg1", "DevProject", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogImageDefinitionBuildClientGetResponse{
	// 	ImageDefinitionBuild: armdevcenter.ImageDefinitionBuild{
	// 		Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/imageDefinitions/builds"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 		Properties: &armdevcenter.ImageDefinitionBuildProperties{
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogImageDefinitionBuildClient) GetBuildDetails

GetBuildDetails - Gets Build details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • buildName - The ID of the Image Definition Build.
  • options - ProjectCatalogImageDefinitionBuildClientGetBuildDetailsOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.GetBuildDetails method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_GetImageBuildDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogImageDefinitionBuildClient().GetBuildDetails(ctx, "rg1", "DevProject", "CentralCatalog", "DefaultDevImage", "0a28fc61-6f87-4611-8fe2-32df44ab93b7", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogImageDefinitionBuildClientGetBuildDetailsResponse{
	// 	ImageDefinitionBuildDetails: armdevcenter.ImageDefinitionBuildDetails{
	// 		ImageReference: &armdevcenter.ImageReference{
	// 			ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 		},
	// 		Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 		TaskGroups: []*armdevcenter.ImageDefinitionBuildTaskGroup{
	// 			{
	// 				Name: to.Ptr("Provisioning"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("Provisioning"),
	// 						DisplayName: to.Ptr("Provisioning"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						ID: to.Ptr("e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						LogURI: to.Ptr(""),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 			{
	// 				Name: to.Ptr("Customizations"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("vs2022"),
	// 						DisplayName: to.Ptr("Install Visual Studio 2022"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						ID: to.Ptr("e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						LogURI: to.Ptr("https://8a40af38-3b4c-4672-a6a4-5e964b1870ed-contosodevcenter.centralus.devcenter.azure.com/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7/logs/e72eb35f-f406-42ec-8b93-7d18a9f7b059"),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 			{
	// 				Name: to.Ptr("Generalization"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 				Tasks: []*armdevcenter.ImageDefinitionBuildTask{
	// 					{
	// 						Name: to.Ptr("Generalization"),
	// 						DisplayName: to.Ptr("Generalization"),
	// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 						LogURI: to.Ptr(""),
	// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
	// 					},
	// 				},
	// 			},
	// 		},
	// 	},
	// }
}

type ProjectCatalogImageDefinitionBuildClientBeginCancelOptions

type ProjectCatalogImageDefinitionBuildClientBeginCancelOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogImageDefinitionBuildClientBeginCancelOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.BeginCancel method.

type ProjectCatalogImageDefinitionBuildClientCancelResponse

type ProjectCatalogImageDefinitionBuildClientCancelResponse struct {
}

ProjectCatalogImageDefinitionBuildClientCancelResponse contains the response from method ProjectCatalogImageDefinitionBuildClient.BeginCancel.

type ProjectCatalogImageDefinitionBuildClientGetBuildDetailsOptions

type ProjectCatalogImageDefinitionBuildClientGetBuildDetailsOptions struct {
}

ProjectCatalogImageDefinitionBuildClientGetBuildDetailsOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.GetBuildDetails method.

type ProjectCatalogImageDefinitionBuildClientGetBuildDetailsResponse

type ProjectCatalogImageDefinitionBuildClientGetBuildDetailsResponse struct {
	// Represents a specific build of an Image Definition.
	ImageDefinitionBuildDetails
}

ProjectCatalogImageDefinitionBuildClientGetBuildDetailsResponse contains the response from method ProjectCatalogImageDefinitionBuildClient.GetBuildDetails.

type ProjectCatalogImageDefinitionBuildClientGetOptions

type ProjectCatalogImageDefinitionBuildClientGetOptions struct {
}

ProjectCatalogImageDefinitionBuildClientGetOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildClient.Get method.

type ProjectCatalogImageDefinitionBuildClientGetResponse

type ProjectCatalogImageDefinitionBuildClientGetResponse struct {
	// Represents a specific build of an Image Definition.
	ImageDefinitionBuild
}

ProjectCatalogImageDefinitionBuildClientGetResponse contains the response from method ProjectCatalogImageDefinitionBuildClient.Get.

type ProjectCatalogImageDefinitionBuildsClient

type ProjectCatalogImageDefinitionBuildsClient struct {
	// contains filtered or unexported fields
}

ProjectCatalogImageDefinitionBuildsClient contains the methods for the ProjectCatalogImageDefinitionBuilds group. Don't use this type directly, use NewProjectCatalogImageDefinitionBuildsClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectCatalogImageDefinitionBuildsClient

func NewProjectCatalogImageDefinitionBuildsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectCatalogImageDefinitionBuildsClient, error)

NewProjectCatalogImageDefinitionBuildsClient creates a new instance of ProjectCatalogImageDefinitionBuildsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectCatalogImageDefinitionBuildsClient) NewListByImageDefinitionPager

NewListByImageDefinitionPager - Lists builds for a specified image definition.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_ListImageBuildsByImageDefinition.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectCatalogImageDefinitionBuildsClient().NewListByImageDefinitionPager("rg1", "DevProject", "CentralCatalog", "DefaultDevImage", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionResponse{
		// 	ImageDefinitionBuildListResult: armdevcenter.ImageDefinitionBuildListResult{
		// 		Value: []*armdevcenter.ImageDefinitionBuild{
		// 			{
		// 				Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/imageDefinitions/builds"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog/imageDefinitions/DefaultDevImage/builds/0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 				Properties: &armdevcenter.ImageDefinitionBuildProperties{
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionOptions

type ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionOptions struct {
}

ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionOptions contains the optional parameters for the ProjectCatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager method.

type ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionResponse

type ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionResponse struct {
	// Paged collection of ImageDefinitionBuild items
	ImageDefinitionBuildListResult
}

ProjectCatalogImageDefinitionBuildsClientListByImageDefinitionResponse contains the response from method ProjectCatalogImageDefinitionBuildsClient.NewListByImageDefinitionPager.

type ProjectCatalogImageDefinitionsClient

type ProjectCatalogImageDefinitionsClient struct {
	// contains filtered or unexported fields
}

ProjectCatalogImageDefinitionsClient contains the methods for the ProjectCatalogImageDefinitions group. Don't use this type directly, use NewProjectCatalogImageDefinitionsClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectCatalogImageDefinitionsClient

func NewProjectCatalogImageDefinitionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectCatalogImageDefinitionsClient, error)

NewProjectCatalogImageDefinitionsClient creates a new instance of ProjectCatalogImageDefinitionsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectCatalogImageDefinitionsClient) BeginBuildImage

BeginBuildImage - Builds an image for the specified Image Definition. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - ProjectCatalogImageDefinitionsClientBeginBuildImageOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.BeginBuildImage method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_BuildImage.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogImageDefinitionsClient().BeginBuildImage(ctx, "rg1", "DevProject", "CentralCatalog", "DefaultDevImage", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectCatalogImageDefinitionsClient) GetByProjectCatalog

GetByProjectCatalog - Gets an Image Definition from the catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - ProjectCatalogImageDefinitionsClientGetByProjectCatalogOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.GetByProjectCatalog method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_GetByProjectCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogImageDefinitionsClient().GetByProjectCatalog(ctx, "rg1", "ContosoProject", "TeamCatalog", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogImageDefinitionsClientGetByProjectCatalogResponse{
	// 	ImageDefinition: armdevcenter.ImageDefinition{
	// 		Name: to.Ptr("WebDevBox"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/imagedefinitions"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/catalogs/TeamCatalog/imagedefinitions/WebDevBox"),
	// 		Properties: &armdevcenter.ImageDefinitionProperties{
	// 			ActiveImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			AutoImageBuild: to.Ptr(armdevcenter.AutoImageBuildStatusEnabled),
	// 			ImageReference: &armdevcenter.ImageReference{
	// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
	// 			},
	// 			ImageValidationErrorDetails: &armdevcenter.ImageValidationErrorDetails{
	// 				Code: to.Ptr("400"),
	// 				Message: to.Ptr("Validation failed"),
	// 			},
	// 			ImageValidationStatus: to.Ptr(armdevcenter.ImageValidationStatusFailed),
	// 			LatestBuild: &armdevcenter.LatestImageBuild{
	// 				Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
	// 				EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
	// 				StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
	// 				Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusRunning),
	// 			},
	// 			ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogImageDefinitionsClient) GetErrorDetails

GetErrorDetails - Gets Image Definition error details. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • imageDefinitionName - The name of the Image Definition.
  • options - ProjectCatalogImageDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.GetErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogImageDefinitions_GetErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogImageDefinitionsClient().GetErrorDetails(ctx, "rg1", "DevProject", "TeamCatalog", "WebDevBox", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogImageDefinitionsClientGetErrorDetailsResponse{
	// 	CatalogResourceValidationErrorDetails: armdevcenter.CatalogResourceValidationErrorDetails{
	// 		Errors: []*armdevcenter.CatalogErrorDetails{
	// 			{
	// 				Code: to.Ptr("CatalogItemNotExist"),
	// 				Message: to.Ptr("Task choco doesn't exist in the dev center."),
	// 			},
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogImageDefinitionsClient) NewListByProjectCatalogPager

NewListByProjectCatalogPager - List Image Definitions in the catalog.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogImageDefinitionsClientListByProjectCatalogOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.NewListByProjectCatalogPager method.
Example

Generated from example definition: 2026-01-01-preview/ImageDefinitions_ListByProjectCatalog.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectCatalogImageDefinitionsClient().NewListByProjectCatalogPager("rg1", "ContosoProject", "TeamCatalog", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectCatalogImageDefinitionsClientListByProjectCatalogResponse{
		// 	ImageDefinitionListResult: armdevcenter.ImageDefinitionListResult{
		// 		Value: []*armdevcenter.ImageDefinition{
		// 			{
		// 				Name: to.Ptr("WebDevBox"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/catalogs/imagedefinitions"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProject/catalogs/TeamCatalog/imagedefinitions/WebDevBox"),
		// 				Properties: &armdevcenter.ImageDefinitionProperties{
		// 					ActiveImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					AutoImageBuild: to.Ptr(armdevcenter.AutoImageBuildStatusEnabled),
		// 					ImageReference: &armdevcenter.ImageReference{
		// 						ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/Example/providers/Microsoft.DevCenter/devcenters/Contoso/galleries/contosogallery/images/exampleImage/versions/1.0.0"),
		// 					},
		// 					ImageValidationErrorDetails: &armdevcenter.ImageValidationErrorDetails{
		// 						Code: to.Ptr("400"),
		// 						Message: to.Ptr("Validation failed"),
		// 					},
		// 					ImageValidationStatus: to.Ptr(armdevcenter.ImageValidationStatusFailed),
		// 					LatestBuild: &armdevcenter.LatestImageBuild{
		// 						Name: to.Ptr("0a28fc61-6f87-4611-8fe2-32df44ab93b7"),
		// 						EndTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:12.952Z"); return t}()),
		// 						StartTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:25:02.224Z"); return t}()),
		// 						Status: to.Ptr(armdevcenter.ImageDefinitionBuildStatusRunning),
		// 					},
		// 					ValidationStatus: to.Ptr(armdevcenter.CatalogResourceValidationStatusSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectCatalogImageDefinitionsClientBeginBuildImageOptions

type ProjectCatalogImageDefinitionsClientBeginBuildImageOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogImageDefinitionsClientBeginBuildImageOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.BeginBuildImage method.

type ProjectCatalogImageDefinitionsClientBuildImageResponse

type ProjectCatalogImageDefinitionsClientBuildImageResponse struct {
}

ProjectCatalogImageDefinitionsClientBuildImageResponse contains the response from method ProjectCatalogImageDefinitionsClient.BeginBuildImage.

type ProjectCatalogImageDefinitionsClientGetByProjectCatalogOptions

type ProjectCatalogImageDefinitionsClientGetByProjectCatalogOptions struct {
}

ProjectCatalogImageDefinitionsClientGetByProjectCatalogOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.GetByProjectCatalog method.

type ProjectCatalogImageDefinitionsClientGetByProjectCatalogResponse

type ProjectCatalogImageDefinitionsClientGetByProjectCatalogResponse struct {
	// Represents a definition for an Image.
	ImageDefinition
}

ProjectCatalogImageDefinitionsClientGetByProjectCatalogResponse contains the response from method ProjectCatalogImageDefinitionsClient.GetByProjectCatalog.

type ProjectCatalogImageDefinitionsClientGetErrorDetailsOptions

type ProjectCatalogImageDefinitionsClientGetErrorDetailsOptions struct {
}

ProjectCatalogImageDefinitionsClientGetErrorDetailsOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.GetErrorDetails method.

type ProjectCatalogImageDefinitionsClientGetErrorDetailsResponse

type ProjectCatalogImageDefinitionsClientGetErrorDetailsResponse struct {
	// List of validator error details. Populated when changes are made to the resource or its dependent resources that impact
	// the validity of the Catalog resource.
	CatalogResourceValidationErrorDetails
}

ProjectCatalogImageDefinitionsClientGetErrorDetailsResponse contains the response from method ProjectCatalogImageDefinitionsClient.GetErrorDetails.

type ProjectCatalogImageDefinitionsClientListByProjectCatalogOptions

type ProjectCatalogImageDefinitionsClientListByProjectCatalogOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectCatalogImageDefinitionsClientListByProjectCatalogOptions contains the optional parameters for the ProjectCatalogImageDefinitionsClient.NewListByProjectCatalogPager method.

type ProjectCatalogImageDefinitionsClientListByProjectCatalogResponse

type ProjectCatalogImageDefinitionsClientListByProjectCatalogResponse struct {
	// Paged collection of ImageDefinition items
	ImageDefinitionListResult
}

ProjectCatalogImageDefinitionsClientListByProjectCatalogResponse contains the response from method ProjectCatalogImageDefinitionsClient.NewListByProjectCatalogPager.

type ProjectCatalogSettings

type ProjectCatalogSettings struct {
	// Indicates catalog item types that can be synced.
	CatalogItemSyncTypes []*CatalogItemType
}

ProjectCatalogSettings - Settings to be used when associating a project with a catalog.

func (ProjectCatalogSettings) MarshalJSON

func (p ProjectCatalogSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectCatalogSettings.

func (*ProjectCatalogSettings) UnmarshalJSON

func (p *ProjectCatalogSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectCatalogSettings.

type ProjectCatalogSettingsInfo

type ProjectCatalogSettingsInfo struct {
	// Whether project catalogs associated with projects in this dev center can be configured to sync catalog items.
	CatalogItemSyncEnableStatus *CatalogItemSyncEnableStatus
}

ProjectCatalogSettingsInfo - Project catalog settings for project catalogs under a project associated to this dev center.

func (ProjectCatalogSettingsInfo) MarshalJSON

func (p ProjectCatalogSettingsInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectCatalogSettingsInfo.

func (*ProjectCatalogSettingsInfo) UnmarshalJSON

func (p *ProjectCatalogSettingsInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectCatalogSettingsInfo.

type ProjectCatalogsClient

type ProjectCatalogsClient struct {
	// contains filtered or unexported fields
}

ProjectCatalogsClient contains the methods for the ProjectCatalogs group. Don't use this type directly, use NewProjectCatalogsClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectCatalogsClient

func NewProjectCatalogsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectCatalogsClient, error)

NewProjectCatalogsClient creates a new instance of ProjectCatalogsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectCatalogsClient) BeginConnect

func (client *ProjectCatalogsClient) BeginConnect(ctx context.Context, resourceGroupName string, projectName string, catalogName string, options *ProjectCatalogsClientBeginConnectOptions) (*runtime.Poller[ProjectCatalogsClientConnectResponse], error)

BeginConnect - Connects a project catalog to enable syncing. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogsClientBeginConnectOptions contains the optional parameters for the ProjectCatalogsClient.BeginConnect method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_Connect.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginConnect(ctx, "rg1", "DevProject", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectCatalogsClient) BeginCreateOrUpdate

func (client *ProjectCatalogsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, projectName string, catalogName string, body Catalog, options *ProjectCatalogsClientBeginCreateOrUpdateOptions) (*runtime.Poller[ProjectCatalogsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a project catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • body - Represents a catalog.
  • options - ProjectCatalogsClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectCatalogsClient.BeginCreateOrUpdate method.
Example (ProjectCatalogsCreateOrUpdateAdo)

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_CreateAdo.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "CentralCatalog", armdevcenter.Catalog{
		Properties: &armdevcenter.CatalogProperties{
			AdoGit: &armdevcenter.GitCatalog{
				Path:             to.Ptr("/templates"),
				Branch:           to.Ptr("main"),
				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
				URI:              to.Ptr("https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogsClientCreateOrUpdateResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			AdoGit: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://contoso@dev.azure.com/contoso/contosoOrg/_git/centralrepo-fakecontoso"),
	// 			},
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](0),
	// 				Removed: to.Ptr[int32](0),
	// 				SyncedCatalogItemTypes: []*armdevcenter.CatalogItemType{
	// 					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
	// 				},
	// 				SynchronizationErrors: to.Ptr[int32](0),
	// 				Unchanged: to.Ptr[int32](0),
	// 				Updated: to.Ptr[int32](0),
	// 				ValidationErrors: to.Ptr[int32](0),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}
Example (ProjectCatalogsCreateOrUpdateGitHub)

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_CreateGitHub.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "CentralCatalog", armdevcenter.Catalog{
		Properties: &armdevcenter.CatalogProperties{
			GitHub: &armdevcenter.GitCatalog{
				Path:             to.Ptr("/templates"),
				Branch:           to.Ptr("main"),
				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
				URI:              to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogsClientCreateOrUpdateResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](0),
	// 				Removed: to.Ptr[int32](0),
	// 				SyncedCatalogItemTypes: []*armdevcenter.CatalogItemType{
	// 					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
	// 				},
	// 				SynchronizationErrors: to.Ptr[int32](0),
	// 				Unchanged: to.Ptr[int32](0),
	// 				Updated: to.Ptr[int32](0),
	// 				ValidationErrors: to.Ptr[int32](0),
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateAccepted),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogsClient) BeginDelete

func (client *ProjectCatalogsClient) BeginDelete(ctx context.Context, resourceGroupName string, projectName string, catalogName string, options *ProjectCatalogsClientBeginDeleteOptions) (*runtime.Poller[ProjectCatalogsClientDeleteResponse], error)

BeginDelete - Deletes a project catalog resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogsClientBeginDeleteOptions contains the optional parameters for the ProjectCatalogsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginDelete(ctx, "rg1", "DevProject", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectCatalogsClient) BeginPatch

func (client *ProjectCatalogsClient) BeginPatch(ctx context.Context, resourceGroupName string, projectName string, catalogName string, body CatalogUpdate, options *ProjectCatalogsClientBeginPatchOptions) (*runtime.Poller[ProjectCatalogsClientPatchResponse], error)

BeginPatch - Partially updates a project catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • body - Updatable project catalog properties.
  • options - ProjectCatalogsClientBeginPatchOptions contains the optional parameters for the ProjectCatalogsClient.BeginPatch method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginPatch(ctx, "rg1", "DevProject", "CentralCatalog", armdevcenter.CatalogUpdate{
		Properties: &armdevcenter.CatalogUpdateProperties{
			GitHub: &armdevcenter.GitCatalog{
				Path: to.Ptr("/environments"),
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogsClientPatchResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/environments"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](1),
	// 				Removed: to.Ptr[int32](1),
	// 				SynchronizationErrors: to.Ptr[int32](1),
	// 				Unchanged: to.Ptr[int32](1),
	// 				Updated: to.Ptr[int32](1),
	// 				ValidationErrors: to.Ptr[int32](1),
	// 			},
	// 			LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogsClient) BeginSync

func (client *ProjectCatalogsClient) BeginSync(ctx context.Context, resourceGroupName string, projectName string, catalogName string, options *ProjectCatalogsClientBeginSyncOptions) (*runtime.Poller[ProjectCatalogsClientSyncResponse], error)

BeginSync - Syncs templates for a template source. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogsClientBeginSyncOptions contains the optional parameters for the ProjectCatalogsClient.BeginSync method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_Sync.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectCatalogsClient().BeginSync(ctx, "rg1", "DevProject", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectCatalogsClient) Get

func (client *ProjectCatalogsClient) Get(ctx context.Context, resourceGroupName string, projectName string, catalogName string, options *ProjectCatalogsClientGetOptions) (ProjectCatalogsClientGetResponse, error)

Get - Gets an associated project catalog. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogsClientGetOptions contains the optional parameters for the ProjectCatalogsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogsClient().Get(ctx, "rg1", "DevProject", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogsClientGetResponse{
	// 	Catalog: armdevcenter.Catalog{
	// 		Name: to.Ptr("CentralCatalog"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/catalogs"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/catalogs/CentralCatalog"),
	// 		Properties: &armdevcenter.CatalogProperties{
	// 			ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
	// 			GitHub: &armdevcenter.GitCatalog{
	// 				Path: to.Ptr("/templates"),
	// 				Branch: to.Ptr("main"),
	// 				SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
	// 				URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
	// 			},
	// 			LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			LastSyncStats: &armdevcenter.SyncStats{
	// 				Added: to.Ptr[int32](1),
	// 				Removed: to.Ptr[int32](1),
	// 				SyncedCatalogItemTypes: []*armdevcenter.CatalogItemType{
	// 					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
	// 				},
	// 				SynchronizationErrors: to.Ptr[int32](1),
	// 				Unchanged: to.Ptr[int32](1),
	// 				Updated: to.Ptr[int32](1),
	// 				ValidationErrors: to.Ptr[int32](1),
	// 			},
	// 			LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogsClient) GetSyncErrorDetails

func (client *ProjectCatalogsClient) GetSyncErrorDetails(ctx context.Context, resourceGroupName string, projectName string, catalogName string, options *ProjectCatalogsClientGetSyncErrorDetailsOptions) (ProjectCatalogsClientGetSyncErrorDetailsResponse, error)

GetSyncErrorDetails - Gets project catalog synchronization error details If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • catalogName - The name of the Catalog.
  • options - ProjectCatalogsClientGetSyncErrorDetailsOptions contains the optional parameters for the ProjectCatalogsClient.GetSyncErrorDetails method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_GetSyncErrorDetails.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectCatalogsClient().GetSyncErrorDetails(ctx, "rg1", "DevProject", "CentralCatalog", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectCatalogsClientGetSyncErrorDetailsResponse{
	// 	SyncErrorDetails: armdevcenter.SyncErrorDetails{
	// 		Conflicts: []*armdevcenter.CatalogConflictError{
	// 			{
	// 				Name: to.Ptr("DuplicateEnvironmentName"),
	// 				Path: to.Ptr("/Environments/Duplicate/manifest.yaml"),
	// 			},
	// 		},
	// 		Errors: []*armdevcenter.CatalogSyncError{
	// 			{
	// 				Path: to.Ptr("/Environments/Invalid/manifest.yaml"),
	// 				ErrorDetails: []*armdevcenter.CatalogErrorDetails{
	// 					{
	// 						Code: to.Ptr("ParseError"),
	// 						Message: to.Ptr("Schema Error Within Catalog Item: Missing Name"),
	// 					},
	// 				},
	// 			},
	// 		},
	// 		OperationError: &armdevcenter.CatalogErrorDetails{
	// 			Code: to.Ptr("Conflict"),
	// 			Message: to.Ptr("The source control credentials could not be validated successfully."),
	// 		},
	// 	},
	// }
}

func (*ProjectCatalogsClient) NewListPager

func (client *ProjectCatalogsClient) NewListPager(resourceGroupName string, projectName string, options *ProjectCatalogsClientListOptions) *runtime.Pager[ProjectCatalogsClientListResponse]

NewListPager - Lists the catalogs associated with a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectCatalogsClientListOptions contains the optional parameters for the ProjectCatalogsClient.NewListPager method.
Example

Generated from example definition: 2026-01-01-preview/ProjectCatalogs_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectCatalogsClient().NewListPager("rg1", "DevProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectCatalogsClientListResponse{
		// 	CatalogListResult: armdevcenter.CatalogListResult{
		// 		Value: []*armdevcenter.Catalog{
		// 			{
		// 				Name: to.Ptr("CentralCatalog"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/catalogs"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject/Contoso/catalogs"),
		// 				Properties: &armdevcenter.CatalogProperties{
		// 					ConnectionState: to.Ptr(armdevcenter.CatalogConnectionStateConnected),
		// 					GitHub: &armdevcenter.GitCatalog{
		// 						Path: to.Ptr("/templates"),
		// 						Branch: to.Ptr("main"),
		// 						SecretIdentifier: to.Ptr("https://contosokv.vault.azure.net/secrets/CentralRepoPat"),
		// 						URI: to.Ptr("https://github.com/Contoso/centralrepo-fake.git"),
		// 					},
		// 					LastConnectionTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
		// 					LastSyncStats: &armdevcenter.SyncStats{
		// 						Added: to.Ptr[int32](1),
		// 						Removed: to.Ptr[int32](1),
		// 						SynchronizationErrors: to.Ptr[int32](1),
		// 						Unchanged: to.Ptr[int32](1),
		// 						Updated: to.Ptr[int32](1),
		// 						ValidationErrors: to.Ptr[int32](1),
		// 					},
		// 					LastSyncTime: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:28:00.314Z"); return t}()),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					SyncState: to.Ptr(armdevcenter.CatalogSyncStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectCatalogsClientBeginConnectOptions

type ProjectCatalogsClientBeginConnectOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogsClientBeginConnectOptions contains the optional parameters for the ProjectCatalogsClient.BeginConnect method.

type ProjectCatalogsClientBeginCreateOrUpdateOptions

type ProjectCatalogsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogsClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectCatalogsClient.BeginCreateOrUpdate method.

type ProjectCatalogsClientBeginDeleteOptions

type ProjectCatalogsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogsClientBeginDeleteOptions contains the optional parameters for the ProjectCatalogsClient.BeginDelete method.

type ProjectCatalogsClientBeginPatchOptions

type ProjectCatalogsClientBeginPatchOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogsClientBeginPatchOptions contains the optional parameters for the ProjectCatalogsClient.BeginPatch method.

type ProjectCatalogsClientBeginSyncOptions

type ProjectCatalogsClientBeginSyncOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectCatalogsClientBeginSyncOptions contains the optional parameters for the ProjectCatalogsClient.BeginSync method.

type ProjectCatalogsClientConnectResponse

type ProjectCatalogsClientConnectResponse struct {
}

ProjectCatalogsClientConnectResponse contains the response from method ProjectCatalogsClient.BeginConnect.

type ProjectCatalogsClientCreateOrUpdateResponse

type ProjectCatalogsClientCreateOrUpdateResponse struct {
	// Represents a catalog.
	Catalog
}

ProjectCatalogsClientCreateOrUpdateResponse contains the response from method ProjectCatalogsClient.BeginCreateOrUpdate.

type ProjectCatalogsClientDeleteResponse

type ProjectCatalogsClientDeleteResponse struct {
}

ProjectCatalogsClientDeleteResponse contains the response from method ProjectCatalogsClient.BeginDelete.

type ProjectCatalogsClientGetOptions

type ProjectCatalogsClientGetOptions struct {
}

ProjectCatalogsClientGetOptions contains the optional parameters for the ProjectCatalogsClient.Get method.

type ProjectCatalogsClientGetResponse

type ProjectCatalogsClientGetResponse struct {
	// Represents a catalog.
	Catalog
}

ProjectCatalogsClientGetResponse contains the response from method ProjectCatalogsClient.Get.

type ProjectCatalogsClientGetSyncErrorDetailsOptions

type ProjectCatalogsClientGetSyncErrorDetailsOptions struct {
}

ProjectCatalogsClientGetSyncErrorDetailsOptions contains the optional parameters for the ProjectCatalogsClient.GetSyncErrorDetails method.

type ProjectCatalogsClientGetSyncErrorDetailsResponse

type ProjectCatalogsClientGetSyncErrorDetailsResponse struct {
	// Synchronization error details.
	SyncErrorDetails
}

ProjectCatalogsClientGetSyncErrorDetailsResponse contains the response from method ProjectCatalogsClient.GetSyncErrorDetails.

type ProjectCatalogsClientListOptions

type ProjectCatalogsClientListOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectCatalogsClientListOptions contains the optional parameters for the ProjectCatalogsClient.NewListPager method.

type ProjectCatalogsClientListResponse

type ProjectCatalogsClientListResponse struct {
	// Paged collection of Catalog items
	CatalogListResult
}

ProjectCatalogsClientListResponse contains the response from method ProjectCatalogsClient.NewListPager.

type ProjectCatalogsClientPatchResponse

type ProjectCatalogsClientPatchResponse struct {
	// Represents a catalog.
	Catalog
}

ProjectCatalogsClientPatchResponse contains the response from method ProjectCatalogsClient.BeginPatch.

type ProjectCatalogsClientSyncResponse

type ProjectCatalogsClientSyncResponse struct {
}

ProjectCatalogsClientSyncResponse contains the response from method ProjectCatalogsClient.BeginSync.

type ProjectCustomizationIdentityType

type ProjectCustomizationIdentityType string

ProjectCustomizationIdentityType - Values can be systemAssignedIdentity or userAssignedIdentity

const (
	// ProjectCustomizationIdentityTypeSystemAssignedIdentity - System assigned identity type.
	ProjectCustomizationIdentityTypeSystemAssignedIdentity ProjectCustomizationIdentityType = "systemAssignedIdentity"
	// ProjectCustomizationIdentityTypeUserAssignedIdentity - User assigned identity type.
	ProjectCustomizationIdentityTypeUserAssignedIdentity ProjectCustomizationIdentityType = "userAssignedIdentity"
)

func PossibleProjectCustomizationIdentityTypeValues

func PossibleProjectCustomizationIdentityTypeValues() []ProjectCustomizationIdentityType

PossibleProjectCustomizationIdentityTypeValues returns the possible values for the ProjectCustomizationIdentityType const type.

type ProjectCustomizationManagedIdentity

type ProjectCustomizationManagedIdentity struct {
	// Ex: /subscriptions/fa5fc227-a624-475e-b696-cdd604c735bc/resourceGroups/<resource group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myId.
	// Mutually exclusive with identityType systemAssignedIdentity.
	IdentityResourceID *string

	// Values can be systemAssignedIdentity or userAssignedIdentity.
	IdentityType *ProjectCustomizationIdentityType
}

ProjectCustomizationManagedIdentity - A reference to a Managed Identity that is attached to the Project.

func (ProjectCustomizationManagedIdentity) MarshalJSON

func (p ProjectCustomizationManagedIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectCustomizationManagedIdentity.

func (*ProjectCustomizationManagedIdentity) UnmarshalJSON

func (p *ProjectCustomizationManagedIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectCustomizationManagedIdentity.

type ProjectCustomizationSettings

type ProjectCustomizationSettings struct {
	// The identities that can to be used in customization scenarios; e.g., to clone a repository.
	Identities []*ProjectCustomizationManagedIdentity

	// Indicates whether user customizations are enabled.
	UserCustomizationsEnableStatus *UserCustomizationsEnableStatus
}

ProjectCustomizationSettings - Settings to be used for customizations.

func (ProjectCustomizationSettings) MarshalJSON

func (p ProjectCustomizationSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectCustomizationSettings.

func (*ProjectCustomizationSettings) UnmarshalJSON

func (p *ProjectCustomizationSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectCustomizationSettings.

type ProjectEnvironmentType

type ProjectEnvironmentType struct {
	// REQUIRED; The geo-location where the resource lives
	Location *string

	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// Properties of an environment type.
	Properties *ProjectEnvironmentTypeProperties

	// Resource tags.
	Tags map[string]*string

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ProjectEnvironmentType - Represents an environment type.

func (ProjectEnvironmentType) MarshalJSON

func (p ProjectEnvironmentType) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentType.

func (*ProjectEnvironmentType) UnmarshalJSON

func (p *ProjectEnvironmentType) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentType.

type ProjectEnvironmentTypeListResult

type ProjectEnvironmentTypeListResult struct {
	// READ-ONLY; The ProjectEnvironmentType items on this page
	Value []*ProjectEnvironmentType

	// The link to the next page of items
	NextLink *string
}

ProjectEnvironmentTypeListResult - Paged collection of ProjectEnvironmentType items

func (ProjectEnvironmentTypeListResult) MarshalJSON

func (p ProjectEnvironmentTypeListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentTypeListResult.

func (*ProjectEnvironmentTypeListResult) UnmarshalJSON

func (p *ProjectEnvironmentTypeListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentTypeListResult.

type ProjectEnvironmentTypeProperties

type ProjectEnvironmentTypeProperties struct {
	// The role definition assigned to the environment creator on backing resources.
	CreatorRoleAssignment *ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment

	// Id of a subscription that the environment type will be mapped to. The environment's resources will be deployed into this
	// subscription.
	DeploymentTargetID *string

	// The display name of the project environment type.
	DisplayName *string

	// Defines whether this Environment Type can be used in this Project.
	Status *EnvironmentTypeEnableStatus

	// Role Assignments created on environment backing resources. This is a mapping from a user object ID to an object of role
	// definition IDs.
	UserRoleAssignments map[string]*UserRoleAssignmentValue

	// READ-ONLY; The number of environments of this type.
	EnvironmentCount *int32

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

ProjectEnvironmentTypeProperties - Properties of a project environment type.

func (ProjectEnvironmentTypeProperties) MarshalJSON

func (p ProjectEnvironmentTypeProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentTypeProperties.

func (*ProjectEnvironmentTypeProperties) UnmarshalJSON

func (p *ProjectEnvironmentTypeProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentTypeProperties.

type ProjectEnvironmentTypeUpdate

type ProjectEnvironmentTypeUpdate struct {
	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// Properties to configure an environment type.
	Properties *ProjectEnvironmentTypeUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

ProjectEnvironmentTypeUpdate - The project environment type for partial update. Properties not provided in the update request will not be changed.

func (ProjectEnvironmentTypeUpdate) MarshalJSON

func (p ProjectEnvironmentTypeUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentTypeUpdate.

func (*ProjectEnvironmentTypeUpdate) UnmarshalJSON

func (p *ProjectEnvironmentTypeUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentTypeUpdate.

type ProjectEnvironmentTypeUpdateProperties

type ProjectEnvironmentTypeUpdateProperties struct {
	// The role definition assigned to the environment creator on backing resources.
	CreatorRoleAssignment *ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment

	// Id of a subscription that the environment type will be mapped to. The environment's resources will be deployed into this
	// subscription.
	DeploymentTargetID *string

	// The display name of the project environment type.
	DisplayName *string

	// Defines whether this Environment Type can be used in this Project.
	Status *EnvironmentTypeEnableStatus

	// Role Assignments created on environment backing resources. This is a mapping from a user object ID to an object of role
	// definition IDs.
	UserRoleAssignments map[string]*UserRoleAssignmentValue
}

ProjectEnvironmentTypeUpdateProperties - Properties of a project environment type. These properties can be updated after the resource has been created.

func (ProjectEnvironmentTypeUpdateProperties) MarshalJSON

func (p ProjectEnvironmentTypeUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentTypeUpdateProperties.

func (*ProjectEnvironmentTypeUpdateProperties) UnmarshalJSON

func (p *ProjectEnvironmentTypeUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentTypeUpdateProperties.

type ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment

type ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment struct {
	// A map of roles to assign to the environment creator.
	Roles map[string]*EnvironmentRole
}

ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment - The role definition assigned to the environment creator on backing resources.

func (ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment) MarshalJSON

MarshalJSON implements the json.Marshaller interface for type ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment.

func (*ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment) UnmarshalJSON

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment.

type ProjectEnvironmentTypesClient

type ProjectEnvironmentTypesClient struct {
	// contains filtered or unexported fields
}

ProjectEnvironmentTypesClient contains the methods for the ProjectEnvironmentTypes group. Don't use this type directly, use NewProjectEnvironmentTypesClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectEnvironmentTypesClient

func NewProjectEnvironmentTypesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectEnvironmentTypesClient, error)

NewProjectEnvironmentTypesClient creates a new instance of ProjectEnvironmentTypesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectEnvironmentTypesClient) CreateOrUpdate

CreateOrUpdate - Creates or updates a project environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • environmentTypeName - The name of the environment type.
  • body - Represents a Project Environment Type.
  • options - ProjectEnvironmentTypesClientCreateOrUpdateOptions contains the optional parameters for the ProjectEnvironmentTypesClient.CreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/ProjectEnvironmentTypes_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectEnvironmentTypesClient().CreateOrUpdate(ctx, "rg1", "ContosoProj", "DevTest", armdevcenter.ProjectEnvironmentType{
		Location: to.Ptr("centralus"),
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Properties: &armdevcenter.ProjectEnvironmentTypeProperties{
			CreatorRoleAssignment: &armdevcenter.ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment{
				Roles: map[string]*armdevcenter.EnvironmentRole{
					"4cbf0b6c-e750-441c-98a7-10da8387e4d6": {},
				},
			},
			DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
			Status:             to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
			UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
				"e45e3m7c-176e-416a-b466-0c5ec8298f8a": {
					Roles: map[string]*armdevcenter.EnvironmentRole{
						"4cbf0b6c-e750-441c-98a7-10da8387e4d6": {},
					},
				},
			},
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("RnD"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectEnvironmentTypesClientCreateOrUpdateResponse{
	// 	ProjectEnvironmentType: armdevcenter.ProjectEnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/environmentTypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectEnvironmentTypeProperties{
	// 			CreatorRoleAssignment: &armdevcenter.ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment{
	// 				Roles: map[string]*armdevcenter.EnvironmentRole{
	// 					"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 						Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 						RoleName: to.Ptr("Developer"),
	// 					},
	// 				},
	// 			},
	// 			DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
	// 			DisplayName: to.Ptr("DevTest"),
	// 			EnvironmentCount: to.Ptr[int32](0),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			Status: to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
	// 			UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
	// 				"e45e3m7c-176e-416a-b466-0c5ec8298f8a": &armdevcenter.UserRoleAssignmentValue{
	// 					Roles: map[string]*armdevcenter.EnvironmentRole{
	// 						"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 							Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 							RoleName: to.Ptr("Developer"),
	// 						},
	// 					},
	// 				},
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("RnD"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

func (*ProjectEnvironmentTypesClient) Delete

func (client *ProjectEnvironmentTypesClient) Delete(ctx context.Context, resourceGroupName string, projectName string, environmentTypeName string, options *ProjectEnvironmentTypesClientDeleteOptions) (ProjectEnvironmentTypesClientDeleteResponse, error)

Delete - Deletes a project environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • environmentTypeName - The name of the environment type.
  • options - ProjectEnvironmentTypesClientDeleteOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Delete method.
Example

Generated from example definition: 2026-01-01-preview/ProjectEnvironmentTypes_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectEnvironmentTypesClient().Delete(ctx, "rg1", "ContosoProj", "DevTest", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectEnvironmentTypesClientDeleteResponse{
	// }
}

func (*ProjectEnvironmentTypesClient) Get

func (client *ProjectEnvironmentTypesClient) Get(ctx context.Context, resourceGroupName string, projectName string, environmentTypeName string, options *ProjectEnvironmentTypesClientGetOptions) (ProjectEnvironmentTypesClientGetResponse, error)

Get - Gets a project environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • environmentTypeName - The name of the environment type.
  • options - ProjectEnvironmentTypesClientGetOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ProjectEnvironmentTypes_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectEnvironmentTypesClient().Get(ctx, "rg1", "ContosoProj", "DevTest", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectEnvironmentTypesClientGetResponse{
	// 	ProjectEnvironmentType: armdevcenter.ProjectEnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/environmentTypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectEnvironmentTypeProperties{
	// 			CreatorRoleAssignment: &armdevcenter.ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment{
	// 				Roles: map[string]*armdevcenter.EnvironmentRole{
	// 					"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 						Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 						RoleName: to.Ptr("Developer"),
	// 					},
	// 				},
	// 			},
	// 			DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
	// 			EnvironmentCount: to.Ptr[int32](1),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			Status: to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
	// 			UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
	// 				"e45e3m7c-176e-416a-b466-0c5ec8298f8a": &armdevcenter.UserRoleAssignmentValue{
	// 					Roles: map[string]*armdevcenter.EnvironmentRole{
	// 						"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 							Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 							RoleName: to.Ptr("Developer"),
	// 						},
	// 					},
	// 				},
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("RnD"),
	// 		},
	// 	},
	// }
}

func (*ProjectEnvironmentTypesClient) NewListPager

NewListPager - Lists environment types for a project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectEnvironmentTypesClientListOptions contains the optional parameters for the ProjectEnvironmentTypesClient.NewListPager method.
Example

Generated from example definition: 2026-01-01-preview/ProjectEnvironmentTypes_List.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectEnvironmentTypesClient().NewListPager("rg1", "ContosoProj", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectEnvironmentTypesClientListResponse{
		// 	ProjectEnvironmentTypeListResult: armdevcenter.ProjectEnvironmentTypeListResult{
		// 		Value: []*armdevcenter.ProjectEnvironmentType{
		// 			{
		// 				Name: to.Ptr("DevTest"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects/environmentTypes"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest"),
		// 				Identity: &armdevcenter.ManagedServiceIdentity{
		// 					Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
		// 					UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
		// 						"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
		// 							ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
		// 							PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
		// 						},
		// 					},
		// 				},
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.ProjectEnvironmentTypeProperties{
		// 					CreatorRoleAssignment: &armdevcenter.ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment{
		// 						Roles: map[string]*armdevcenter.EnvironmentRole{
		// 							"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
		// 								Description: to.Ptr("Allows Developer access to project virtual machine resources."),
		// 								RoleName: to.Ptr("Developer"),
		// 							},
		// 						},
		// 					},
		// 					DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					Status: to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
		// 					UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
		// 						"e45e3m7c-176e-416a-b466-0c5ec8298f8a": &armdevcenter.UserRoleAssignmentValue{
		// 							Roles: map[string]*armdevcenter.EnvironmentRole{
		// 								"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
		// 									Description: to.Ptr("Allows Developer access to project virtual machine resources."),
		// 									RoleName: to.Ptr("Developer"),
		// 								},
		// 							},
		// 						},
		// 					},
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1@contoso.com"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1@contoso.com"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCenter": to.Ptr("RnD"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*ProjectEnvironmentTypesClient) Update

Update - Partially updates a project environment type. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • environmentTypeName - The name of the environment type.
  • body - Updatable project environment type properties.
  • options - ProjectEnvironmentTypesClientUpdateOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Update method.
Example

Generated from example definition: 2026-01-01-preview/ProjectEnvironmentTypes_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectEnvironmentTypesClient().Update(ctx, "rg1", "ContosoProj", "DevTest", armdevcenter.ProjectEnvironmentTypeUpdate{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Properties: &armdevcenter.ProjectEnvironmentTypeUpdateProperties{
			DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
			Status:             to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
			UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
				"e45e3m7c-176e-416a-b466-0c5ec8298f8a": {
					Roles: map[string]*armdevcenter.EnvironmentRole{
						"4cbf0b6c-e750-441c-98a7-10da8387e4d6": {},
					},
				},
			},
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("RnD"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectEnvironmentTypesClientUpdateResponse{
	// 	ProjectEnvironmentType: armdevcenter.ProjectEnvironmentType{
	// 		Name: to.Ptr("DevTest"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects/environmentTypes"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/ContosoProj/environmentTypes/DevTest"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectEnvironmentTypeProperties{
	// 			CreatorRoleAssignment: &armdevcenter.ProjectEnvironmentTypeUpdatePropertiesCreatorRoleAssignment{
	// 				Roles: map[string]*armdevcenter.EnvironmentRole{
	// 					"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 						Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 						RoleName: to.Ptr("Developer"),
	// 					},
	// 				},
	// 			},
	// 			DeploymentTargetID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000"),
	// 			EnvironmentCount: to.Ptr[int32](1),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			Status: to.Ptr(armdevcenter.EnvironmentTypeEnableStatusEnabled),
	// 			UserRoleAssignments: map[string]*armdevcenter.UserRoleAssignmentValue{
	// 				"e45e3m7c-176e-416a-b466-0c5ec8298f8a": &armdevcenter.UserRoleAssignmentValue{
	// 					Roles: map[string]*armdevcenter.EnvironmentRole{
	// 						"4cbf0b6c-e750-441c-98a7-10da8387e4d6": &armdevcenter.EnvironmentRole{
	// 							Description: to.Ptr("Allows Developer access to project virtual machine resources."),
	// 							RoleName: to.Ptr("Developer"),
	// 						},
	// 					},
	// 				},
	// 			},
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1@contoso.com"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1@contoso.com"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("RnD"),
	// 		},
	// 	},
	// }
}

type ProjectEnvironmentTypesClientCreateOrUpdateOptions

type ProjectEnvironmentTypesClientCreateOrUpdateOptions struct {
}

ProjectEnvironmentTypesClientCreateOrUpdateOptions contains the optional parameters for the ProjectEnvironmentTypesClient.CreateOrUpdate method.

type ProjectEnvironmentTypesClientCreateOrUpdateResponse

type ProjectEnvironmentTypesClientCreateOrUpdateResponse struct {
	// Represents an environment type.
	ProjectEnvironmentType
}

ProjectEnvironmentTypesClientCreateOrUpdateResponse contains the response from method ProjectEnvironmentTypesClient.CreateOrUpdate.

type ProjectEnvironmentTypesClientDeleteOptions

type ProjectEnvironmentTypesClientDeleteOptions struct {
}

ProjectEnvironmentTypesClientDeleteOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Delete method.

type ProjectEnvironmentTypesClientDeleteResponse

type ProjectEnvironmentTypesClientDeleteResponse struct {
}

ProjectEnvironmentTypesClientDeleteResponse contains the response from method ProjectEnvironmentTypesClient.Delete.

type ProjectEnvironmentTypesClientGetOptions

type ProjectEnvironmentTypesClientGetOptions struct {
}

ProjectEnvironmentTypesClientGetOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Get method.

type ProjectEnvironmentTypesClientGetResponse

type ProjectEnvironmentTypesClientGetResponse struct {
	// Represents an environment type.
	ProjectEnvironmentType
}

ProjectEnvironmentTypesClientGetResponse contains the response from method ProjectEnvironmentTypesClient.Get.

type ProjectEnvironmentTypesClientListOptions

type ProjectEnvironmentTypesClientListOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectEnvironmentTypesClientListOptions contains the optional parameters for the ProjectEnvironmentTypesClient.NewListPager method.

type ProjectEnvironmentTypesClientListResponse

type ProjectEnvironmentTypesClientListResponse struct {
	// Paged collection of ProjectEnvironmentType items
	ProjectEnvironmentTypeListResult
}

ProjectEnvironmentTypesClientListResponse contains the response from method ProjectEnvironmentTypesClient.NewListPager.

type ProjectEnvironmentTypesClientUpdateOptions

type ProjectEnvironmentTypesClientUpdateOptions struct {
}

ProjectEnvironmentTypesClientUpdateOptions contains the optional parameters for the ProjectEnvironmentTypesClient.Update method.

type ProjectEnvironmentTypesClientUpdateResponse

type ProjectEnvironmentTypesClientUpdateResponse struct {
	// Represents an environment type.
	ProjectEnvironmentType
}

ProjectEnvironmentTypesClientUpdateResponse contains the response from method ProjectEnvironmentTypesClient.Update.

type ProjectListResult

type ProjectListResult struct {
	// READ-ONLY; The Project items on this page
	Value []*Project

	// The link to the next page of items
	NextLink *string
}

ProjectListResult - Paged collection of Project items

func (ProjectListResult) MarshalJSON

func (p ProjectListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectListResult.

func (*ProjectListResult) UnmarshalJSON

func (p *ProjectListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectListResult.

type ProjectNetworkSettings

type ProjectNetworkSettings struct {
	// READ-ONLY; Indicates whether pools in this Dev Center can use Microsoft Hosted Networks. Defaults to Enabled if not set.
	MicrosoftHostedNetworkEnableStatus *MicrosoftHostedNetworkEnableStatus
}

ProjectNetworkSettings - Network settings for the project.

func (ProjectNetworkSettings) MarshalJSON

func (p ProjectNetworkSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectNetworkSettings.

func (*ProjectNetworkSettings) UnmarshalJSON

func (p *ProjectNetworkSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectNetworkSettings.

type ProjectPoliciesClient

type ProjectPoliciesClient struct {
	// contains filtered or unexported fields
}

ProjectPoliciesClient contains the methods for the ProjectPolicies group. Don't use this type directly, use NewProjectPoliciesClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectPoliciesClient

func NewProjectPoliciesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectPoliciesClient, error)

NewProjectPoliciesClient creates a new instance of ProjectPoliciesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectPoliciesClient) BeginCreateOrUpdate

func (client *ProjectPoliciesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, devCenterName string, projectPolicyName string, body ProjectPolicy, options *ProjectPoliciesClientBeginCreateOrUpdateOptions) (*runtime.Poller[ProjectPoliciesClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates an project policy. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • projectPolicyName - The name of the project policy.
  • body - Represents an project policy.
  • options - ProjectPoliciesClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectPoliciesClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/ProjectPolicies_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58ffff1", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectPoliciesClient().BeginCreateOrUpdate(ctx, "rg1", "Contoso", "DevOnlyResources", armdevcenter.ProjectPolicy{
		Properties: &armdevcenter.ProjectPolicyProperties{
			ResourcePolicies: []*armdevcenter.ResourcePolicy{
				{
					Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
				},
				{
					ResourceType: to.Ptr(armdevcenter.ResourceTypeImages),
					Action:       to.Ptr(armdevcenter.PolicyActionDeny),
				},
				{
					ResourceType: to.Ptr(armdevcenter.ResourceTypeSKUs),
					Action:       to.Ptr(armdevcenter.PolicyActionAllow),
				},
			},
			Scopes: []*string{
				to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
			},
			ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
				AzureAiServicesFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
				},
				DevBoxScheduleDeleteFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusEnabled),
					DefaultValues: []*armdevcenter.DefaultValue{
						{
							Name:  to.Ptr("inactiveThreshold"),
							Value: to.Ptr("P30D"),
						},
						{
							Name:  to.Ptr("gracePeriod"),
							Value: to.Ptr("P3D"),
						},
						{
							Name:  to.Ptr("cancelOnConnectEnableStatus"),
							Value: to.Ptr("false"),
						},
					},
				},
				DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusEnabled),
					DefaultValues: []*armdevcenter.DefaultValue{
						{
							Name:  to.Ptr("maxDevBoxesPerUser"),
							Value: to.Ptr("10"),
						},
					},
				},
				DisplayNameFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusDisabled),
				},
				DevBoxTunnelFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusDisabled),
				},
				ProjectCatalogFeatureStatus: &armdevcenter.FeatureState{
					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultValues: []*armdevcenter.DefaultValue{
						{
							Name:  to.Ptr("environmentDefinitionCatalogItemSync"),
							Value: to.Ptr("Enabled"),
						},
						{
							Name:  to.Ptr("imageDefinitionCatalogItemSync"),
							Value: to.Ptr("Enabled"),
						},
					},
				},
				ServerlessGpuSessionsFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
					DefaultValues: []*armdevcenter.DefaultValue{
						{
							Name:  to.Ptr("maxConcurrentSessionsPerProject"),
							Value: to.Ptr("3"),
						},
					},
				},
				UserCustomizationsFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusEnabled),
				},
				WorkspaceStorageFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectPoliciesClientCreateOrUpdateResponse{
	// 	ProjectPolicy: armdevcenter.ProjectPolicy{
	// 		Name: to.Ptr("DevOnlyResources"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/projectpolicies"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/projectPolicies/DevOnlyResources"),
	// 		Properties: &armdevcenter.ProjectPolicyProperties{
	// 			ResourcePolicies: []*armdevcenter.ResourcePolicy{
	// 				{
	// 					Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeImages),
	// 					Action: to.Ptr(armdevcenter.PolicyActionDeny),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeSKUs),
	// 					Action: to.Ptr(armdevcenter.PolicyActionAllow),
	// 				},
	// 			},
	// 			Scopes: []*string{
	// 				to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 			},
	// 			ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
	// 				AzureAiServicesFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 				},
	// 				DevBoxScheduleDeleteFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("inactiveThreshold"),
	// 							Value: to.Ptr("P30D"),
	// 						},
	// 						{
	// 							Name: to.Ptr("gracePeriod"),
	// 							Value: to.Ptr("P3D"),
	// 						},
	// 						{
	// 							Name: to.Ptr("cancelOnConnectEnableStatus"),
	// 							Value: to.Ptr("false"),
	// 						},
	// 					},
	// 				},
	// 				DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("maxDevBoxesPerUser"),
	// 							Value: to.Ptr("10"),
	// 						},
	// 					},
	// 				},
	// 				DisplayNameFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 				},
	// 				DevBoxTunnelFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 				},
	// 				ProjectCatalogFeatureStatus: &armdevcenter.FeatureState{
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("environmentDefinitionCatalogItemSync"),
	// 							Value: to.Ptr("Enabled"),
	// 						},
	// 						{
	// 							Name: to.Ptr("imageDefinitionCatalogItemSync"),
	// 							Value: to.Ptr("Enabled"),
	// 						},
	// 					},
	// 				},
	// 				ServerlessGpuSessionsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("maxConcurrentSessionsPerProject"),
	// 							Value: to.Ptr("3"),
	// 						},
	// 					},
	// 				},
	// 				UserCustomizationsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 				},
	// 				WorkspaceStorageFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectPoliciesClient) BeginDelete

func (client *ProjectPoliciesClient) BeginDelete(ctx context.Context, resourceGroupName string, devCenterName string, projectPolicyName string, options *ProjectPoliciesClientBeginDeleteOptions) (*runtime.Poller[ProjectPoliciesClientDeleteResponse], error)

BeginDelete - Deletes an project policy. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • projectPolicyName - The name of the project policy.
  • options - ProjectPoliciesClientBeginDeleteOptions contains the optional parameters for the ProjectPoliciesClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/ProjectPolicies_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58ffff1", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectPoliciesClient().BeginDelete(ctx, "rg1", "Contoso", "DevOnlyResources", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectPoliciesClient) BeginUpdate

func (client *ProjectPoliciesClient) BeginUpdate(ctx context.Context, resourceGroupName string, devCenterName string, projectPolicyName string, body ProjectPolicyUpdate, options *ProjectPoliciesClientBeginUpdateOptions) (*runtime.Poller[ProjectPoliciesClientUpdateResponse], error)

BeginUpdate - Partially updates an project policy. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • projectPolicyName - The name of the project policy.
  • body - Updatable project policy properties.
  • options - ProjectPoliciesClientBeginUpdateOptions contains the optional parameters for the ProjectPoliciesClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/ProjectPolicies_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58ffff1", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectPoliciesClient().BeginUpdate(ctx, "rg1", "Contoso", "DevOnlyResources", armdevcenter.ProjectPolicyUpdate{
		Properties: &armdevcenter.ProjectPolicyUpdateProperties{
			ResourcePolicies: []*armdevcenter.ResourcePolicy{
				{
					Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
				},
			},
			ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
				DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
					DefaultStatus:    to.Ptr(armdevcenter.FeatureStatusEnabled),
					DefaultValues: []*armdevcenter.DefaultValue{
						{
							Name:  to.Ptr("maxDevBoxesPerUser"),
							Value: to.Ptr("10"),
						},
					},
				},
			},
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectPoliciesClientUpdateResponse{
	// 	ProjectPolicy: armdevcenter.ProjectPolicy{
	// 		Name: to.Ptr("DevOnlyResources"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/projectpolicies"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/projectPolicies/DevOnlyResources"),
	// 		Properties: &armdevcenter.ProjectPolicyProperties{
	// 			ResourcePolicies: []*armdevcenter.ResourcePolicy{
	// 				{
	// 					Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeImages),
	// 					Action: to.Ptr(armdevcenter.PolicyActionAllow),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeSKUs),
	// 					Action: to.Ptr(armdevcenter.PolicyActionAllow),
	// 				},
	// 			},
	// 			Scopes: []*string{
	// 				to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 			},
	// 			ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
	// 				DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("maxDevBoxesPerUser"),
	// 							Value: to.Ptr("10"),
	// 						},
	// 					},
	// 				},
	// 				AzureAiServicesFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				DevBoxScheduleDeleteFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				DisplayNameFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				DevBoxTunnelFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				ProjectCatalogFeatureStatus: &armdevcenter.FeatureState{
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				ServerlessGpuSessionsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				UserCustomizationsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 				WorkspaceStorageFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectPoliciesClient) Get

func (client *ProjectPoliciesClient) Get(ctx context.Context, resourceGroupName string, devCenterName string, projectPolicyName string, options *ProjectPoliciesClientGetOptions) (ProjectPoliciesClientGetResponse, error)

Get - Gets a specific project policy. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • projectPolicyName - The name of the project policy.
  • options - ProjectPoliciesClientGetOptions contains the optional parameters for the ProjectPoliciesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/ProjectPolicies_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58ffff1", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectPoliciesClient().Get(ctx, "rg1", "Contoso", "DevOnlyResources", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectPoliciesClientGetResponse{
	// 	ProjectPolicy: armdevcenter.ProjectPolicy{
	// 		Name: to.Ptr("DevOnlyResources"),
	// 		Type: to.Ptr("Microsoft.DevCenter/devcenters/projectpolicies"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/projectPolicies/DevOnlyResources"),
	// 		Properties: &armdevcenter.ProjectPolicyProperties{
	// 			ResourcePolicies: []*armdevcenter.ResourcePolicy{
	// 				{
	// 					Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeImages),
	// 					Action: to.Ptr(armdevcenter.PolicyActionDeny),
	// 				},
	// 				{
	// 					ResourceType: to.Ptr(armdevcenter.ResourceTypeSKUs),
	// 					Action: to.Ptr(armdevcenter.PolicyActionAllow),
	// 				},
	// 			},
	// 			Scopes: []*string{
	// 				to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 			},
	// 			ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
	// 				AzureAiServicesFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 				},
	// 				DevBoxScheduleDeleteFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("inactiveThreshold"),
	// 							Value: to.Ptr("P30D"),
	// 						},
	// 						{
	// 							Name: to.Ptr("gracePeriod"),
	// 							Value: to.Ptr("P3D"),
	// 						},
	// 						{
	// 							Name: to.Ptr("cancelOnConnectEnableStatus"),
	// 							Value: to.Ptr("false"),
	// 						},
	// 					},
	// 				},
	// 				DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("maxDevBoxesPerUser"),
	// 							Value: to.Ptr("10"),
	// 						},
	// 					},
	// 				},
	// 				DisplayNameFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 				},
	// 				DevBoxTunnelFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 				},
	// 				ProjectCatalogFeatureStatus: &armdevcenter.FeatureState{
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("environmentDefinitionCatalogItemSync"),
	// 							Value: to.Ptr("Enabled"),
	// 						},
	// 						{
	// 							Name: to.Ptr("imageDefinitionCatalogItemSync"),
	// 							Value: to.Ptr("Enabled"),
	// 						},
	// 					},
	// 				},
	// 				ServerlessGpuSessionsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 					DefaultValues: []*armdevcenter.DefaultValue{
	// 						{
	// 							Name: to.Ptr("maxConcurrentSessionsPerProject"),
	// 							Value: to.Ptr("3"),
	// 						},
	// 					},
	// 				},
	// 				UserCustomizationsFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 				},
	// 				WorkspaceStorageFeatureStatus: &armdevcenter.FeatureState{
	// 					StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 					DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			CreatedBy: to.Ptr("User1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("User1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*ProjectPoliciesClient) NewListByDevCenterPager

func (client *ProjectPoliciesClient) NewListByDevCenterPager(resourceGroupName string, devCenterName string, options *ProjectPoliciesClientListByDevCenterOptions) *runtime.Pager[ProjectPoliciesClientListByDevCenterResponse]

NewListByDevCenterPager - Lists all project policies in the dev center.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • devCenterName - The name of the devcenter.
  • options - ProjectPoliciesClientListByDevCenterOptions contains the optional parameters for the ProjectPoliciesClient.NewListByDevCenterPager method.
Example

Generated from example definition: 2026-01-01-preview/ProjectPolicies_ListByDevCenter.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58ffff1", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectPoliciesClient().NewListByDevCenterPager("rg1", "Contoso", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectPoliciesClientListByDevCenterResponse{
		// 	ProjectPolicyListResult: armdevcenter.ProjectPolicyListResult{
		// 		Value: []*armdevcenter.ProjectPolicy{
		// 			{
		// 				Name: to.Ptr("DevOnlyResources"),
		// 				Type: to.Ptr("Microsoft.DevCenter/devcenters/projectpolicies"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/projectPolicies/DevOnlyResources"),
		// 				Properties: &armdevcenter.ProjectPolicyProperties{
		// 					ResourcePolicies: []*armdevcenter.ResourcePolicy{
		// 						{
		// 							Resources: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso/attachednetworks/network-westus3"),
		// 						},
		// 						{
		// 							ResourceType: to.Ptr(armdevcenter.ResourceTypeImages),
		// 							Action: to.Ptr(armdevcenter.PolicyActionDeny),
		// 						},
		// 						{
		// 							ResourceType: to.Ptr(armdevcenter.ResourceTypeSKUs),
		// 							Action: to.Ptr(armdevcenter.PolicyActionAllow),
		// 						},
		// 					},
		// 					Scopes: []*string{
		// 						to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff1/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
		// 					},
		// 					ConfigurationPolicies: &armdevcenter.ConfigurationPolicies{
		// 						DevBoxLimitsFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 							ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 							DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
		// 							DefaultValues: []*armdevcenter.DefaultValue{
		// 								{
		// 									Name: to.Ptr("maxDevBoxesPerUser"),
		// 									Value: to.Ptr("10"),
		// 								},
		// 							},
		// 						},
		// 						AzureAiServicesFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						DevBoxScheduleDeleteFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 							ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						DisplayNameFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						DevBoxTunnelFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						ProjectCatalogFeatureStatus: &armdevcenter.FeatureState{
		// 							ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						ServerlessGpuSessionsFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 							ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						UserCustomizationsFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 						WorkspaceStorageFeatureStatus: &armdevcenter.FeatureState{
		// 							StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
		// 						},
		// 					},
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					CreatedBy: to.Ptr("User1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:24:24.818Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("User1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectPoliciesClientBeginCreateOrUpdateOptions

type ProjectPoliciesClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectPoliciesClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectPoliciesClient.BeginCreateOrUpdate method.

type ProjectPoliciesClientBeginDeleteOptions

type ProjectPoliciesClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectPoliciesClientBeginDeleteOptions contains the optional parameters for the ProjectPoliciesClient.BeginDelete method.

type ProjectPoliciesClientBeginUpdateOptions

type ProjectPoliciesClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectPoliciesClientBeginUpdateOptions contains the optional parameters for the ProjectPoliciesClient.BeginUpdate method.

type ProjectPoliciesClientCreateOrUpdateResponse

type ProjectPoliciesClientCreateOrUpdateResponse struct {
	// Represents an project policy resource.
	ProjectPolicy
}

ProjectPoliciesClientCreateOrUpdateResponse contains the response from method ProjectPoliciesClient.BeginCreateOrUpdate.

type ProjectPoliciesClientDeleteResponse

type ProjectPoliciesClientDeleteResponse struct {
}

ProjectPoliciesClientDeleteResponse contains the response from method ProjectPoliciesClient.BeginDelete.

type ProjectPoliciesClientGetOptions

type ProjectPoliciesClientGetOptions struct {
}

ProjectPoliciesClientGetOptions contains the optional parameters for the ProjectPoliciesClient.Get method.

type ProjectPoliciesClientGetResponse

type ProjectPoliciesClientGetResponse struct {
	// Represents an project policy resource.
	ProjectPolicy
}

ProjectPoliciesClientGetResponse contains the response from method ProjectPoliciesClient.Get.

type ProjectPoliciesClientListByDevCenterOptions

type ProjectPoliciesClientListByDevCenterOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectPoliciesClientListByDevCenterOptions contains the optional parameters for the ProjectPoliciesClient.NewListByDevCenterPager method.

type ProjectPoliciesClientListByDevCenterResponse

type ProjectPoliciesClientListByDevCenterResponse struct {
	// Paged collection of ProjectPolicy items
	ProjectPolicyListResult
}

ProjectPoliciesClientListByDevCenterResponse contains the response from method ProjectPoliciesClient.NewListByDevCenterPager.

type ProjectPoliciesClientUpdateResponse

type ProjectPoliciesClientUpdateResponse struct {
	// Represents an project policy resource.
	ProjectPolicy
}

ProjectPoliciesClientUpdateResponse contains the response from method ProjectPoliciesClient.BeginUpdate.

type ProjectPolicy

type ProjectPolicy struct {
	// Properties of an project policy.
	Properties *ProjectPolicyProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

ProjectPolicy - Represents an project policy resource.

func (ProjectPolicy) MarshalJSON

func (p ProjectPolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectPolicy.

func (*ProjectPolicy) UnmarshalJSON

func (p *ProjectPolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectPolicy.

type ProjectPolicyListResult

type ProjectPolicyListResult struct {
	// READ-ONLY; The ProjectPolicy items on this page
	Value []*ProjectPolicy

	// The link to the next page of items
	NextLink *string
}

ProjectPolicyListResult - Paged collection of ProjectPolicy items

func (ProjectPolicyListResult) MarshalJSON

func (p ProjectPolicyListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectPolicyListResult.

func (*ProjectPolicyListResult) UnmarshalJSON

func (p *ProjectPolicyListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectPolicyListResult.

type ProjectPolicyProperties

type ProjectPolicyProperties struct {
	// Configuration Policies part of this project policy.
	ConfigurationPolicies *ConfigurationPolicies

	// Resource policies that are a part of this project policy.
	ResourcePolicies []*ResourcePolicy

	// Resources that have access to the shared resources that are a part of this project policy.
	Scopes []*string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

ProjectPolicyProperties - Properties of an project policy.

func (ProjectPolicyProperties) MarshalJSON

func (p ProjectPolicyProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectPolicyProperties.

func (*ProjectPolicyProperties) UnmarshalJSON

func (p *ProjectPolicyProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectPolicyProperties.

type ProjectPolicyUpdate

type ProjectPolicyUpdate struct {
	// Properties of an project policy to be updated.
	Properties *ProjectPolicyUpdateProperties
}

ProjectPolicyUpdate - The project policy properties for partial update. Properties not provided in the update request will not be changed.

func (ProjectPolicyUpdate) MarshalJSON

func (p ProjectPolicyUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectPolicyUpdate.

func (*ProjectPolicyUpdate) UnmarshalJSON

func (p *ProjectPolicyUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectPolicyUpdate.

type ProjectPolicyUpdateProperties

type ProjectPolicyUpdateProperties struct {
	// Configuration Policies part of this project policy.
	ConfigurationPolicies *ConfigurationPolicies

	// Resource policies that are a part of this project policy.
	ResourcePolicies []*ResourcePolicy

	// Resources that have access to the shared resources that are a part of this project policy.
	Scopes []*string
}

ProjectPolicyUpdateProperties - Properties of an project policy. These properties can be updated after the resource has been created.

func (ProjectPolicyUpdateProperties) MarshalJSON

func (p ProjectPolicyUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectPolicyUpdateProperties.

func (*ProjectPolicyUpdateProperties) UnmarshalJSON

func (p *ProjectPolicyUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectPolicyUpdateProperties.

type ProjectProperties

type ProjectProperties struct {
	// List of Entra ID group assignments associated with this project.
	AssignedGroups []*AssignedGroup

	// Indicates whether Azure AI services are enabled for a project.
	AzureAiServicesSettings *AzureAiServicesSettings

	// Settings to be used when associating a project with a catalog.
	CatalogSettings *ProjectCatalogSettings

	// Settings to be used for customizations.
	CustomizationSettings *ProjectCustomizationSettings

	// Description of the project.
	Description *string

	// Dev Box Schedule Delete settings.
	DevBoxScheduleDeleteSettings *DevBoxScheduleDeleteSettings

	// Resource Id of an associated DevCenter.
	DevCenterID *string

	// The display name of the project.
	DisplayName *string

	// When specified, limits the maximum number of Dev Boxes a single user can create across all pools in the project. This will
	// have no effect on existing Dev Boxes when reduced.
	MaxDevBoxesPerUser *int32

	// Settings to be used for serverless GPU.
	ServerlessGpuSessionsSettings *ServerlessGpuSessionsSettings

	// Settings to be used for workspace storage.
	WorkspaceStorageSettings *WorkspaceStorageSettings

	// READ-ONLY; The URI of the Dev Center resource this project is associated with.
	DevCenterURI *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

ProjectProperties - Properties of a project.

func (ProjectProperties) MarshalJSON

func (p ProjectProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectProperties.

func (*ProjectProperties) UnmarshalJSON

func (p *ProjectProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectProperties.

type ProjectUpdate

type ProjectUpdate struct {
	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// The geo-location where the resource lives.
	Location *string

	// Properties of a project to be updated.
	Properties *ProjectUpdateProperties

	// Resource tags.
	Tags map[string]*string
}

ProjectUpdate - The project properties for partial update. Properties not provided in the update request will not be changed.

func (ProjectUpdate) MarshalJSON

func (p ProjectUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectUpdate.

func (*ProjectUpdate) UnmarshalJSON

func (p *ProjectUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectUpdate.

type ProjectUpdateProperties

type ProjectUpdateProperties struct {
	// List of Entra ID group assignments associated with this project.
	AssignedGroups []*AssignedGroup

	// Indicates whether Azure AI services are enabled for a project.
	AzureAiServicesSettings *AzureAiServicesSettings

	// Settings to be used when associating a project with a catalog.
	CatalogSettings *ProjectCatalogSettings

	// Settings to be used for customizations.
	CustomizationSettings *ProjectCustomizationSettings

	// Description of the project.
	Description *string

	// Dev Box Schedule Delete settings.
	DevBoxScheduleDeleteSettings *DevBoxScheduleDeleteSettings

	// Resource Id of an associated DevCenter.
	DevCenterID *string

	// The display name of the project.
	DisplayName *string

	// When specified, limits the maximum number of Dev Boxes a single user can create across all pools in the project. This will
	// have no effect on existing Dev Boxes when reduced.
	MaxDevBoxesPerUser *int32

	// Settings to be used for serverless GPU.
	ServerlessGpuSessionsSettings *ServerlessGpuSessionsSettings

	// Settings to be used for workspace storage.
	WorkspaceStorageSettings *WorkspaceStorageSettings
}

ProjectUpdateProperties - Properties of a project. These properties can be updated after the resource has been created.

func (ProjectUpdateProperties) MarshalJSON

func (p ProjectUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ProjectUpdateProperties.

func (*ProjectUpdateProperties) UnmarshalJSON

func (p *ProjectUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ProjectUpdateProperties.

type ProjectsClient

type ProjectsClient struct {
	// contains filtered or unexported fields
}

ProjectsClient contains the methods for the Projects group. Don't use this type directly, use NewProjectsClient() instead.

Generated from API version 2026-01-01-preview

func NewProjectsClient

func NewProjectsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ProjectsClient, error)

NewProjectsClient creates a new instance of ProjectsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*ProjectsClient) BeginCreateOrUpdate

func (client *ProjectsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, projectName string, body Project, options *ProjectsClientBeginCreateOrUpdateOptions) (*runtime.Poller[ProjectsClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a project. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • body - Represents a project.
  • options - ProjectsClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectsClient.BeginCreateOrUpdate method.
Example (ProjectsCreateOrUpdate)

Generated from example definition: 2026-01-01-preview/Projects_Put.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", armdevcenter.Project{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.ProjectProperties{
			Description: to.Ptr("This is my first project."),
			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
			DisplayName: to.Ptr("Dev"),
			AssignedGroups: []*armdevcenter.AssignedGroup{
				{
					ObjectID: to.Ptr("11111111-1111-1111-1111-111111111111"),
					Scope:    to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
				},
				{
					ObjectID: to.Ptr("22222222-2222-2222-2222-222222222222"),
					Scope:    to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
				},
			},
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("R&D"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientCreateOrUpdateResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("DevProject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project."),
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			AssignedGroups: []*armdevcenter.AssignedGroup{
	// 				{
	// 					ObjectID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 					Scope: to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
	// 				},
	// 				{
	// 					ObjectID: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 					Scope: to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}
Example (ProjectsCreateOrUpdateWithCustomizationSettings)

Generated from example definition: 2026-01-01-preview/Projects_PutWithCustomizationSettings.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", armdevcenter.Project{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
				"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": {},
			},
		},
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.ProjectProperties{
			Description: to.Ptr("This is my first project."),
			CustomizationSettings: &armdevcenter.ProjectCustomizationSettings{
				Identities: []*armdevcenter.ProjectCustomizationManagedIdentity{
					{
						IdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
						IdentityType:       to.Ptr(armdevcenter.ProjectCustomizationIdentityTypeUserAssignedIdentity),
					},
				},
			},
			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("R&D"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientCreateOrUpdateResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("DevProject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeUserAssigned),
	// 			UserAssignedIdentities: map[string]*armdevcenter.UserAssignedIdentity{
	// 				"/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1": &armdevcenter.UserAssignedIdentity{
	// 					ClientID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 					PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 				},
	// 			},
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project."),
	// 			CustomizationSettings: &armdevcenter.ProjectCustomizationSettings{
	// 				Identities: []*armdevcenter.ProjectCustomizationManagedIdentity{
	// 					{
	// 						IdentityResourceID: to.Ptr("/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/identityGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testidentity1"),
	// 						IdentityType: to.Ptr(armdevcenter.ProjectCustomizationIdentityTypeUserAssignedIdentity),
	// 					},
	// 				},
	// 			},
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 		},
	// 	},
	// }
}
Example (ProjectsCreateOrUpdateWithCustomizationSettingsSystemIdentity)

Generated from example definition: 2026-01-01-preview/Projects_PutWithCustomizationSettings_SystemIdentity.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", armdevcenter.Project{
		Identity: &armdevcenter.ManagedServiceIdentity{
			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeSystemAssigned),
		},
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.ProjectProperties{
			Description: to.Ptr("This is my first project."),
			CustomizationSettings: &armdevcenter.ProjectCustomizationSettings{
				Identities: []*armdevcenter.ProjectCustomizationManagedIdentity{
					{
						IdentityType: to.Ptr(armdevcenter.ProjectCustomizationIdentityTypeSystemAssignedIdentity),
					},
				},
			},
			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("R&D"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientCreateOrUpdateResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("DevProject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Identity: &armdevcenter.ManagedServiceIdentity{
	// 			Type: to.Ptr(armdevcenter.ManagedServiceIdentityTypeSystemAssigned),
	// 			PrincipalID: to.Ptr("2111b8fc-e123-485a-b408-bf1153189494"),
	// 			TenantID: to.Ptr("e35621a5-f615-4a20-940e-de8a84b15abc"),
	// 		},
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project."),
	// 			CustomizationSettings: &armdevcenter.ProjectCustomizationSettings{
	// 				Identities: []*armdevcenter.ProjectCustomizationManagedIdentity{
	// 					{
	// 						IdentityType: to.Ptr(armdevcenter.ProjectCustomizationIdentityTypeSystemAssignedIdentity),
	// 					},
	// 				},
	// 			},
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 		},
	// 	},
	// }
}
Example (ProjectsCreateOrUpdateWithLimitsPerDev)

Generated from example definition: 2026-01-01-preview/Projects_PutWithMaxDevBoxPerUser.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", armdevcenter.Project{
		Location: to.Ptr("centralus"),
		Properties: &armdevcenter.ProjectProperties{
			Description:        to.Ptr("This is my first project."),
			DevCenterID:        to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
			MaxDevBoxesPerUser: to.Ptr[int32](3),
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("R&D"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientCreateOrUpdateResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("DevProject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project."),
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			MaxDevBoxesPerUser: to.Ptr[int32](3),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 		},
	// 	},
	// }
}

func (*ProjectsClient) BeginDelete

func (client *ProjectsClient) BeginDelete(ctx context.Context, resourceGroupName string, projectName string, options *ProjectsClientBeginDeleteOptions) (*runtime.Poller[ProjectsClientDeleteResponse], error)

BeginDelete - Deletes a project resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectsClientBeginDeleteOptions contains the optional parameters for the ProjectsClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/Projects_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginDelete(ctx, "rg1", "DevProject", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*ProjectsClient) BeginUpdate

func (client *ProjectsClient) BeginUpdate(ctx context.Context, resourceGroupName string, projectName string, body ProjectUpdate, options *ProjectsClientBeginUpdateOptions) (*runtime.Poller[ProjectsClientUpdateResponse], error)

BeginUpdate - Partially updates a project. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • body - Updatable project properties.
  • options - ProjectsClientBeginUpdateOptions contains the optional parameters for the ProjectsClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Projects_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewProjectsClient().BeginUpdate(ctx, "rg1", "DevProject", armdevcenter.ProjectUpdate{
		Properties: &armdevcenter.ProjectUpdateProperties{
			Description: to.Ptr("This is my first project."),
			CatalogSettings: &armdevcenter.ProjectCatalogSettings{
				CatalogItemSyncTypes: []*armdevcenter.CatalogItemType{
					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
				},
			},
			DisplayName: to.Ptr("Dev"),
			AssignedGroups: []*armdevcenter.AssignedGroup{
				{
					ObjectID: to.Ptr("33333333-3333-3333-3333-333333333333"),
					Scope:    to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
				},
			},
		},
		Tags: map[string]*string{
			"CostCenter": to.Ptr("R&D"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientUpdateResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("myproject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project. Very exciting."),
	// 			CatalogSettings: &armdevcenter.ProjectCatalogSettings{
	// 				CatalogItemSyncTypes: []*armdevcenter.CatalogItemType{
	// 					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
	// 				},
	// 			},
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("Dev"),
	// 			AssignedGroups: []*armdevcenter.AssignedGroup{
	// 				{
	// 					ObjectID: to.Ptr("33333333-3333-3333-3333-333333333333"),
	// 					Scope: to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 			"displayName": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

func (*ProjectsClient) Get

func (client *ProjectsClient) Get(ctx context.Context, resourceGroupName string, projectName string, options *ProjectsClientGetOptions) (ProjectsClientGetResponse, error)

Get - Gets a specific project. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectsClientGetOptions contains the optional parameters for the ProjectsClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/Projects_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectsClient().Get(ctx, "rg1", "DevProject", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientGetResponse{
	// 	Project: armdevcenter.Project{
	// 		Name: to.Ptr("DevProject"),
	// 		Type: to.Ptr("Microsoft.DevCenter/projects"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/DevProject"),
	// 		Location: to.Ptr("centralus"),
	// 		Properties: &armdevcenter.ProjectProperties{
	// 			Description: to.Ptr("This is my first project."),
	// 			CatalogSettings: &armdevcenter.ProjectCatalogSettings{
	// 				CatalogItemSyncTypes: []*armdevcenter.CatalogItemType{
	// 					to.Ptr(armdevcenter.CatalogItemTypeEnvironmentDefinition),
	// 				},
	// 			},
	// 			DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
	// 			DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
	// 			DisplayName: to.Ptr("Dev"),
	// 			AssignedGroups: []*armdevcenter.AssignedGroup{
	// 				{
	// 					ObjectID: to.Ptr("11111111-1111-1111-1111-111111111111"),
	// 					Scope: to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
	// 				},
	// 				{
	// 					ObjectID: to.Ptr("22222222-2222-2222-2222-222222222222"),
	// 					Scope: to.Ptr(armdevcenter.AssignedGroupScopeDevBox),
	// 				},
	// 			},
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 		Tags: map[string]*string{
	// 			"CostCenter": to.Ptr("R&D"),
	// 			"hidden-title": to.Ptr("Dev"),
	// 		},
	// 	},
	// }
}

func (*ProjectsClient) GetInheritedSettings

func (client *ProjectsClient) GetInheritedSettings(ctx context.Context, resourceGroupName string, projectName string, options *ProjectsClientGetInheritedSettingsOptions) (ProjectsClientGetInheritedSettingsResponse, error)

GetInheritedSettings - Gets applicable inherited settings for this project. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - ProjectsClientGetInheritedSettingsOptions contains the optional parameters for the ProjectsClient.GetInheritedSettings method.
Example

Generated from example definition: 2026-01-01-preview/Projects_GetInheritedSettings.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewProjectsClient().GetInheritedSettings(ctx, "rg1", "Contoso", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.ProjectsClientGetInheritedSettingsResponse{
	// 	InheritedSettingsForProject: armdevcenter.InheritedSettingsForProject{
	// 		ProjectCatalogSettings: &armdevcenter.InheritedProjectCatalogSettings{
	// 			CatalogItemSyncEnableStatus: to.Ptr(armdevcenter.CatalogItemSyncEnableStatusEnabled),
	// 			ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultValues: []*armdevcenter.DefaultValue{
	// 				{
	// 					Name: to.Ptr("environmentDefinitionCatalogItemSync"),
	// 					Value: to.Ptr("Enabled"),
	// 				},
	// 				{
	// 					Name: to.Ptr("imageDefinitionCatalogItemSync"),
	// 					Value: to.Ptr("Enabled"),
	// 				},
	// 			},
	// 		},
	// 		NetworkSettings: &armdevcenter.ProjectNetworkSettings{
	// 			MicrosoftHostedNetworkEnableStatus: to.Ptr(armdevcenter.MicrosoftHostedNetworkEnableStatusEnabled),
	// 		},
	// 		AzureAiServicesSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 		},
	// 		DevBoxScheduleDeleteSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 			ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 			DefaultValues: []*armdevcenter.DefaultValue{
	// 				{
	// 					Name: to.Ptr("inactiveThreshold"),
	// 					Value: to.Ptr("P30D"),
	// 				},
	// 				{
	// 					Name: to.Ptr("gracePeriod"),
	// 					Value: to.Ptr("P3D"),
	// 				},
	// 				{
	// 					Name: to.Ptr("cancelOnConnectEnableStatus"),
	// 					Value: to.Ptr("false"),
	// 				},
	// 			},
	// 		},
	// 		DevBoxLimitsSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultValues: []*armdevcenter.DefaultValue{
	// 				{
	// 					Name: to.Ptr("maxDevBoxesPerUser"),
	// 					Value: to.Ptr("10"),
	// 				},
	// 			},
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 		},
	// 		DisplayNameSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 		},
	// 		DevBoxTunnelSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 		},
	// 		ServerlessGpuSessionsSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			ValuesModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 			DefaultValues: []*armdevcenter.DefaultValue{
	// 				{
	// 					Name: to.Ptr("maxConcurrentSessionsPerProject"),
	// 					Value: to.Ptr("3"),
	// 				},
	// 			},
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusAutoDeploy),
	// 		},
	// 		UserCustomizationsSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusEnabled),
	// 		},
	// 		WorkspaceStorageSettings: &armdevcenter.FeatureState{
	// 			StatusModifiable: to.Ptr(armdevcenter.FeatureStateModifiableNotModifiable),
	// 			DefaultStatus: to.Ptr(armdevcenter.FeatureStatusDisabled),
	// 		},
	// 	},
	// }
}

func (*ProjectsClient) NewListByResourceGroupPager

func (client *ProjectsClient) NewListByResourceGroupPager(resourceGroupName string, options *ProjectsClientListByResourceGroupOptions) *runtime.Pager[ProjectsClientListByResourceGroupResponse]

NewListByResourceGroupPager - Lists all projects in the resource group.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • options - ProjectsClientListByResourceGroupOptions contains the optional parameters for the ProjectsClient.NewListByResourceGroupPager method.
Example

Generated from example definition: 2026-01-01-preview/Projects_ListByResourceGroup.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectsClient().NewListByResourceGroupPager("rg1", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectsClientListByResourceGroupResponse{
		// 	ProjectListResult: armdevcenter.ProjectListResult{
		// 		Value: []*armdevcenter.Project{
		// 			{
		// 				Name: to.Ptr("myproject"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myproject"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.ProjectProperties{
		// 					Description: to.Ptr("This is my first project."),
		// 					DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
		// 					DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCenter": to.Ptr("R&D"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*ProjectsClient) NewListBySubscriptionPager

NewListBySubscriptionPager - Lists all projects in the subscription.

  • options - ProjectsClientListBySubscriptionOptions contains the optional parameters for the ProjectsClient.NewListBySubscriptionPager method.
Example

Generated from example definition: 2026-01-01-preview/Projects_ListBySubscription.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewProjectsClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.ProjectsClientListBySubscriptionResponse{
		// 	ProjectListResult: armdevcenter.ProjectListResult{
		// 		Value: []*armdevcenter.Project{
		// 			{
		// 				Name: to.Ptr("myproject"),
		// 				Type: to.Ptr("Microsoft.DevCenter/projects"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/myproject"),
		// 				Location: to.Ptr("centralus"),
		// 				Properties: &armdevcenter.ProjectProperties{
		// 					Description: to.Ptr("This is my first project."),
		// 					DevCenterID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/devcenters/Contoso"),
		// 					DevCenterURI: to.Ptr("https://4c7c8922-78e9-4928-aa6f-75ba59355371-contoso.centralus.devcenter.azure.com"),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 				Tags: map[string]*string{
		// 					"CostCenter": to.Ptr("R&D"),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type ProjectsClientBeginCreateOrUpdateOptions

type ProjectsClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectsClientBeginCreateOrUpdateOptions contains the optional parameters for the ProjectsClient.BeginCreateOrUpdate method.

type ProjectsClientBeginDeleteOptions

type ProjectsClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectsClientBeginDeleteOptions contains the optional parameters for the ProjectsClient.BeginDelete method.

type ProjectsClientBeginUpdateOptions

type ProjectsClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string
}

ProjectsClientBeginUpdateOptions contains the optional parameters for the ProjectsClient.BeginUpdate method.

type ProjectsClientCreateOrUpdateResponse

type ProjectsClientCreateOrUpdateResponse struct {
	// Represents a project resource.
	Project
}

ProjectsClientCreateOrUpdateResponse contains the response from method ProjectsClient.BeginCreateOrUpdate.

type ProjectsClientDeleteResponse

type ProjectsClientDeleteResponse struct {
}

ProjectsClientDeleteResponse contains the response from method ProjectsClient.BeginDelete.

type ProjectsClientGetInheritedSettingsOptions

type ProjectsClientGetInheritedSettingsOptions struct {
}

ProjectsClientGetInheritedSettingsOptions contains the optional parameters for the ProjectsClient.GetInheritedSettings method.

type ProjectsClientGetInheritedSettingsResponse

type ProjectsClientGetInheritedSettingsResponse struct {
	// Applicable inherited settings for a project.
	InheritedSettingsForProject
}

ProjectsClientGetInheritedSettingsResponse contains the response from method ProjectsClient.GetInheritedSettings.

type ProjectsClientGetOptions

type ProjectsClientGetOptions struct {
}

ProjectsClientGetOptions contains the optional parameters for the ProjectsClient.Get method.

type ProjectsClientGetResponse

type ProjectsClientGetResponse struct {
	// Represents a project resource.
	Project
}

ProjectsClientGetResponse contains the response from method ProjectsClient.Get.

type ProjectsClientListByResourceGroupOptions

type ProjectsClientListByResourceGroupOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectsClientListByResourceGroupOptions contains the optional parameters for the ProjectsClient.NewListByResourceGroupPager method.

type ProjectsClientListByResourceGroupResponse

type ProjectsClientListByResourceGroupResponse struct {
	// Paged collection of Project items
	ProjectListResult
}

ProjectsClientListByResourceGroupResponse contains the response from method ProjectsClient.NewListByResourceGroupPager.

type ProjectsClientListBySubscriptionOptions

type ProjectsClientListBySubscriptionOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

ProjectsClientListBySubscriptionOptions contains the optional parameters for the ProjectsClient.NewListBySubscriptionPager method.

type ProjectsClientListBySubscriptionResponse

type ProjectsClientListBySubscriptionResponse struct {
	// Paged collection of Project items
	ProjectListResult
}

ProjectsClientListBySubscriptionResponse contains the response from method ProjectsClient.NewListBySubscriptionPager.

type ProjectsClientUpdateResponse

type ProjectsClientUpdateResponse struct {
	// Represents a project resource.
	Project
}

ProjectsClientUpdateResponse contains the response from method ProjectsClient.BeginUpdate.

type Properties

type Properties struct {
	// Settings to be used in the provisioning of all Dev Boxes that belong to this dev center.
	DevBoxProvisioningSettings *DevBoxProvisioningSettings

	// The display name of the devcenter.
	DisplayName *string

	// Encryption settings to be used for server-side encryption for proprietary content (such as catalogs, logs, customizations).
	Encryption *Encryption

	// Network settings that will be enforced on network resources associated with the Dev Center.
	NetworkSettings *NetworkSettings

	// Dev Center settings to be used when associating a project with a catalog.
	ProjectCatalogSettings *ProjectCatalogSettingsInfo

	// READ-ONLY; The URI of the Dev Center.
	DevCenterURI *string

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

Properties of the devcenter.

func (Properties) MarshalJSON

func (p Properties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Properties.

func (*Properties) UnmarshalJSON

func (p *Properties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Properties.

type ProvisioningState

type ProvisioningState string

ProvisioningState - Provisioning state of the resource.

const (
	// ProvisioningStateAccepted - Accepted provisioning state.
	ProvisioningStateAccepted ProvisioningState = "Accepted"
	// ProvisioningStateCanceled - Canceled provisioning state.
	ProvisioningStateCanceled ProvisioningState = "Canceled"
	// ProvisioningStateCreated - Created provisioning state.
	ProvisioningStateCreated ProvisioningState = "Created"
	// ProvisioningStateCreating - Creating provisioning state.
	ProvisioningStateCreating ProvisioningState = "Creating"
	// ProvisioningStateDeleted - Deleted provisioning state.
	ProvisioningStateDeleted ProvisioningState = "Deleted"
	// ProvisioningStateDeleting - Deleting provisioning state.
	ProvisioningStateDeleting ProvisioningState = "Deleting"
	// ProvisioningStateFailed - Failed provisioning state.
	ProvisioningStateFailed ProvisioningState = "Failed"
	// ProvisioningStateMovingResources - Moving resources provisioning state.
	ProvisioningStateMovingResources ProvisioningState = "MovingResources"
	// ProvisioningStateNotSpecified - Not specified provisioning state.
	ProvisioningStateNotSpecified ProvisioningState = "NotSpecified"
	// ProvisioningStateRolloutInProgress - Rollout in progress provisioning state.
	ProvisioningStateRolloutInProgress ProvisioningState = "RolloutInProgress"
	// ProvisioningStateRunning - Running provisioning state.
	ProvisioningStateRunning ProvisioningState = "Running"
	// ProvisioningStateStorageProvisioningFailed - Storage provisioning failed provisioning state.
	ProvisioningStateStorageProvisioningFailed ProvisioningState = "StorageProvisioningFailed"
	// ProvisioningStateSucceeded - Succeeded provisioning state.
	ProvisioningStateSucceeded ProvisioningState = "Succeeded"
	// ProvisioningStateTransientFailure - Transient failure provisioning state.
	ProvisioningStateTransientFailure ProvisioningState = "TransientFailure"
	// ProvisioningStateUpdated - Updated provisioning state.
	ProvisioningStateUpdated ProvisioningState = "Updated"
	// ProvisioningStateUpdating - Updating provisioning state.
	ProvisioningStateUpdating ProvisioningState = "Updating"
)

func PossibleProvisioningStateValues

func PossibleProvisioningStateValues() []ProvisioningState

PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type.

type RecommendedMachineConfiguration

type RecommendedMachineConfiguration struct {
	// READ-ONLY; Recommended memory range.
	Memory *ResourceRange

	// READ-ONLY; Recommended vCPU range.
	VCPUs *ResourceRange
}

RecommendedMachineConfiguration - Properties for a recommended machine configuration.

func (RecommendedMachineConfiguration) MarshalJSON

func (r RecommendedMachineConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type RecommendedMachineConfiguration.

func (*RecommendedMachineConfiguration) UnmarshalJSON

func (r *RecommendedMachineConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type RecommendedMachineConfiguration.

type ResourcePolicy

type ResourcePolicy struct {
	// Policy action to be taken on the resources. This is optional, and defaults to allow
	Action *PolicyAction

	// Optional. When specified, this expression is used to filter the resources.
	Filter *string

	// Optional. The resource type being restricted or allowed by a project policy. Used with a given action to restrict or allow
	// access to a resource type.
	ResourceType *ResourceType

	// Resources that are included and shared as a part of a project policy.
	Resources *string
}

ResourcePolicy - A resource policy.

func (ResourcePolicy) MarshalJSON

func (r ResourcePolicy) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourcePolicy.

func (*ResourcePolicy) UnmarshalJSON

func (r *ResourcePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ResourcePolicy.

type ResourceRange

type ResourceRange struct {
	// READ-ONLY; Maximum value.
	Max *int32

	// READ-ONLY; Minimum value.
	Min *int32
}

ResourceRange - Properties for a range of values.

func (ResourceRange) MarshalJSON

func (r ResourceRange) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ResourceRange.

func (*ResourceRange) UnmarshalJSON

func (r *ResourceRange) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ResourceRange.

type ResourceType

type ResourceType string

ResourceType - Indicates dev center resource types.

const (
	// ResourceTypeAttachedNetworks - Attached networks resource type.
	ResourceTypeAttachedNetworks ResourceType = "AttachedNetworks"
	// ResourceTypeImages - Images resource type.
	ResourceTypeImages ResourceType = "Images"
	// ResourceTypeSKUs - Skus resource type.
	ResourceTypeSKUs ResourceType = "Skus"
)

func PossibleResourceTypeValues

func PossibleResourceTypeValues() []ResourceType

PossibleResourceTypeValues returns the possible values for the ResourceType const type.

type SKU

type SKU struct {
	// REQUIRED; The name of the SKU. Ex - P3. It is typically a letter+number code
	Name *string

	// If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the
	// resource this may be omitted.
	Capacity *int32

	// If the service has different generations of hardware, for the same SKU, then that can be captured here.
	Family *string

	// The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
	Size *string

	// This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required
	// on a PUT.
	Tier *SKUTier
}

SKU - The resource model definition representing SKU

func (SKU) MarshalJSON

func (s SKU) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SKU.

func (*SKU) UnmarshalJSON

func (s *SKU) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SKU.

type SKUInfo

type SKUInfo struct {
	// REQUIRED; The name of the SKU. Ex - P3. It is typically a letter+number code
	Name *string

	// If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the
	// resource this may be omitted.
	Capacity *int32

	// If the service has different generations of hardware, for the same SKU, then that can be captured here.
	Family *string

	// The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code.
	Size *string

	// This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required
	// on a PUT.
	Tier *SKUTier

	// READ-ONLY; Collection of name/value pairs to describe the SKU capabilities.
	Capabilities []*Capability

	// READ-ONLY; SKU supported locations.
	Locations []*string

	// READ-ONLY; The name of the resource type.
	ResourceType *string
}

SKUInfo - The resource model definition representing SKU for DevCenter resources.

func (SKUInfo) MarshalJSON

func (s SKUInfo) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SKUInfo.

func (*SKUInfo) UnmarshalJSON

func (s *SKUInfo) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SKUInfo.

type SKUListResult

type SKUListResult struct {
	// READ-ONLY; The DevCenterSku items on this page
	Value []*SKUInfo

	// The link to the next page of items
	NextLink *string
}

SKUListResult - Results of the Microsoft.DevCenter SKU list operation.

func (SKUListResult) MarshalJSON

func (s SKUListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SKUListResult.

func (*SKUListResult) UnmarshalJSON

func (s *SKUListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SKUListResult.

type SKUTier

type SKUTier string

SKUTier - This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT.

const (
	// SKUTierBasic - The Basic service tier.
	SKUTierBasic SKUTier = "Basic"
	// SKUTierFree - The Free service tier.
	SKUTierFree SKUTier = "Free"
	// SKUTierPremium - The Premium service tier.
	SKUTierPremium SKUTier = "Premium"
	// SKUTierStandard - The Standard service tier.
	SKUTierStandard SKUTier = "Standard"
)

func PossibleSKUTierValues

func PossibleSKUTierValues() []SKUTier

PossibleSKUTierValues returns the possible values for the SKUTier const type.

type SKUsClient

type SKUsClient struct {
	// contains filtered or unexported fields
}

SKUsClient contains the methods for the SKUs group. Don't use this type directly, use NewSKUsClient() instead.

Generated from API version 2026-01-01-preview

func NewSKUsClient

func NewSKUsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*SKUsClient, error)

NewSKUsClient creates a new instance of SKUsClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*SKUsClient) NewListByProjectPager

func (client *SKUsClient) NewListByProjectPager(resourceGroupName string, projectName string, options *SKUsClientListByProjectOptions) *runtime.Pager[SKUsClientListByProjectResponse]

NewListByProjectPager - Lists SKUs available to the project.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • options - SKUsClientListByProjectOptions contains the optional parameters for the SKUsClient.NewListByProjectPager method.
Example

Generated from example definition: 2026-01-01-preview/Skus_ListByProject.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewSKUsClient().NewListByProjectPager("rg1", "myProject", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.SKUsClientListByProjectResponse{
		// 	SKUListResult: armdevcenter.SKUListResult{
		// 		Value: []*armdevcenter.SKUInfo{
		// 			{
		// 				Name: to.Ptr("Large"),
		// 				Locations: []*string{
		// 					to.Ptr("CentralUS"),
		// 				},
		// 				ResourceType: to.Ptr("projects/pools"),
		// 				Tier: to.Ptr(armdevcenter.SKUTierPremium),
		// 			},
		// 			{
		// 				Name: to.Ptr("Medium"),
		// 				Locations: []*string{
		// 					to.Ptr("CentralUS"),
		// 				},
		// 				ResourceType: to.Ptr("projects/pools"),
		// 				Tier: to.Ptr(armdevcenter.SKUTierStandard),
		// 			},
		// 		},
		// 	},
		// }
	}
}

func (*SKUsClient) NewListBySubscriptionPager

NewListBySubscriptionPager - Lists the Microsoft.DevCenter SKUs available in a subscription.

  • options - SKUsClientListBySubscriptionOptions contains the optional parameters for the SKUsClient.NewListBySubscriptionPager method.
Example

Generated from example definition: 2026-01-01-preview/Skus_ListBySubscription.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewSKUsClient().NewListBySubscriptionPager(nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.SKUsClientListBySubscriptionResponse{
		// 	SKUListResult: armdevcenter.SKUListResult{
		// 		Value: []*armdevcenter.SKUInfo{
		// 			{
		// 				Name: to.Ptr("Large"),
		// 				Locations: []*string{
		// 					to.Ptr("CentralUS"),
		// 				},
		// 				ResourceType: to.Ptr("projects/pools"),
		// 				Tier: to.Ptr(armdevcenter.SKUTierPremium),
		// 			},
		// 			{
		// 				Name: to.Ptr("Medium"),
		// 				Locations: []*string{
		// 					to.Ptr("CentralUS"),
		// 				},
		// 				ResourceType: to.Ptr("projects/pools"),
		// 				Tier: to.Ptr(armdevcenter.SKUTierStandard),
		// 			},
		// 		},
		// 	},
		// }
	}
}

type SKUsClientListByProjectOptions

type SKUsClientListByProjectOptions struct {
}

SKUsClientListByProjectOptions contains the optional parameters for the SKUsClient.NewListByProjectPager method.

type SKUsClientListByProjectResponse

type SKUsClientListByProjectResponse struct {
	// Results of the Microsoft.DevCenter SKU list operation.
	SKUListResult
}

SKUsClientListByProjectResponse contains the response from method SKUsClient.NewListByProjectPager.

type SKUsClientListBySubscriptionOptions

type SKUsClientListBySubscriptionOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SKUsClientListBySubscriptionOptions contains the optional parameters for the SKUsClient.NewListBySubscriptionPager method.

type SKUsClientListBySubscriptionResponse

type SKUsClientListBySubscriptionResponse struct {
	// Results of the Microsoft.DevCenter SKU list operation.
	SKUListResult
}

SKUsClientListBySubscriptionResponse contains the response from method SKUsClient.NewListBySubscriptionPager.

type Schedule

type Schedule struct {
	// Properties of a Schedule resource
	Properties *ScheduleProperties

	// READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
	ID *string

	// READ-ONLY; The name of the resource
	Name *string

	// READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information.
	SystemData *SystemData

	// READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
	Type *string
}

Schedule - Represents a Schedule to execute a task.

func (Schedule) MarshalJSON

func (s Schedule) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Schedule.

func (*Schedule) UnmarshalJSON

func (s *Schedule) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Schedule.

type ScheduleEnableStatus

type ScheduleEnableStatus string

ScheduleEnableStatus - Schedule enable or disable status. Indicates whether the schedule applied to is either enabled or disabled.

const (
	// ScheduleEnableStatusDisabled - Schedule is disabled.
	ScheduleEnableStatusDisabled ScheduleEnableStatus = "Disabled"
	// ScheduleEnableStatusEnabled - Schedule is enabled.
	ScheduleEnableStatusEnabled ScheduleEnableStatus = "Enabled"
)

func PossibleScheduleEnableStatusValues

func PossibleScheduleEnableStatusValues() []ScheduleEnableStatus

PossibleScheduleEnableStatusValues returns the possible values for the ScheduleEnableStatus const type.

type ScheduleListResult

type ScheduleListResult struct {
	// READ-ONLY; The Schedule items on this page
	Value []*Schedule

	// The link to the next page of items
	NextLink *string
}

ScheduleListResult - Paged collection of Schedule items

func (ScheduleListResult) MarshalJSON

func (s ScheduleListResult) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ScheduleListResult.

func (*ScheduleListResult) UnmarshalJSON

func (s *ScheduleListResult) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ScheduleListResult.

type ScheduleProperties

type ScheduleProperties struct {
	// The frequency of this scheduled task.
	Frequency *ScheduledFrequency

	// The geo-location where the resource lives.
	Location *string

	// Indicates whether or not this scheduled task is enabled.
	State *ScheduleEnableStatus

	// Resource tags.
	Tags map[string]*string

	// The target time to trigger the action. The format is HH:MM.
	Time *string

	// The IANA timezone id at which the schedule should execute.
	TimeZone *string

	// Supported type this scheduled task represents.
	Type *ScheduledType

	// READ-ONLY; The provisioning state of the resource.
	ProvisioningState *ProvisioningState
}

ScheduleProperties - The Schedule properties defining when and what to execute.

func (ScheduleProperties) MarshalJSON

func (s ScheduleProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ScheduleProperties.

func (*ScheduleProperties) UnmarshalJSON

func (s *ScheduleProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ScheduleProperties.

type ScheduleUpdate

type ScheduleUpdate struct {
	// Properties of a schedule resource to be updated.
	Properties *ScheduleUpdateProperties
}

ScheduleUpdate - The schedule properties for partial update. Properties not provided in the update request will not be changed.

func (ScheduleUpdate) MarshalJSON

func (s ScheduleUpdate) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ScheduleUpdate.

func (*ScheduleUpdate) UnmarshalJSON

func (s *ScheduleUpdate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ScheduleUpdate.

type ScheduleUpdateProperties

type ScheduleUpdateProperties struct {
	// The frequency of this scheduled task.
	Frequency *ScheduledFrequency

	// The geo-location where the resource lives.
	Location *string

	// Indicates whether or not this scheduled task is enabled.
	State *ScheduleEnableStatus

	// Resource tags.
	Tags map[string]*string

	// The target time to trigger the action. The format is HH:MM.
	Time *string

	// The IANA timezone id at which the schedule should execute.
	TimeZone *string

	// Supported type this scheduled task represents.
	Type *ScheduledType
}

ScheduleUpdateProperties - Updatable properties of a Schedule.

func (ScheduleUpdateProperties) MarshalJSON

func (s ScheduleUpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ScheduleUpdateProperties.

func (*ScheduleUpdateProperties) UnmarshalJSON

func (s *ScheduleUpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ScheduleUpdateProperties.

type ScheduledFrequency

type ScheduledFrequency string

ScheduledFrequency - The frequency of task execution.

const (
	// ScheduledFrequencyDaily - The scheduled task will run daily.
	ScheduledFrequencyDaily ScheduledFrequency = "Daily"
)

func PossibleScheduledFrequencyValues

func PossibleScheduledFrequencyValues() []ScheduledFrequency

PossibleScheduledFrequencyValues returns the possible values for the ScheduledFrequency const type.

type ScheduledType

type ScheduledType string

ScheduledType - The supported types for a scheduled task.

const (
	// ScheduledTypeStopDevBox - Stop Dev Box task type.
	ScheduledTypeStopDevBox ScheduledType = "StopDevBox"
)

func PossibleScheduledTypeValues

func PossibleScheduledTypeValues() []ScheduledType

PossibleScheduledTypeValues returns the possible values for the ScheduledType const type.

type SchedulesClient

type SchedulesClient struct {
	// contains filtered or unexported fields
}

SchedulesClient contains the methods for the Schedules group. Don't use this type directly, use NewSchedulesClient() instead.

Generated from API version 2026-01-01-preview

func NewSchedulesClient

func NewSchedulesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*SchedulesClient, error)

NewSchedulesClient creates a new instance of SchedulesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*SchedulesClient) BeginCreateOrUpdate

func (client *SchedulesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, projectName string, poolName string, scheduleName string, body Schedule, options *SchedulesClientBeginCreateOrUpdateOptions) (*runtime.Poller[SchedulesClientCreateOrUpdateResponse], error)

BeginCreateOrUpdate - Creates or updates a Schedule. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • scheduleName - The name of the schedule that uniquely identifies it.
  • body - Represents a scheduled task
  • options - SchedulesClientBeginCreateOrUpdateOptions contains the optional parameters for the SchedulesClient.BeginCreateOrUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Schedules_CreateDailyShutdownPoolSchedule.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewSchedulesClient().BeginCreateOrUpdate(ctx, "rg1", "DevProject", "DevPool", "autoShutdown", armdevcenter.Schedule{
		Properties: &armdevcenter.ScheduleProperties{
			Type:      to.Ptr(armdevcenter.ScheduledTypeStopDevBox),
			Frequency: to.Ptr(armdevcenter.ScheduledFrequencyDaily),
			State:     to.Ptr(armdevcenter.ScheduleEnableStatusEnabled),
			Time:      to.Ptr("17:30"),
			TimeZone:  to.Ptr("America/Los_Angeles"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.SchedulesClientCreateOrUpdateResponse{
	// 	Schedule: armdevcenter.Schedule{
	// 		Name: to.Ptr("autoShutdown"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools/schedules"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown"),
	// 		Properties: &armdevcenter.ScheduleProperties{
	// 			Type: to.Ptr(armdevcenter.ScheduledTypeStopDevBox),
	// 			Frequency: to.Ptr(armdevcenter.ScheduledFrequencyDaily),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			State: to.Ptr(armdevcenter.ScheduleEnableStatusEnabled),
	// 			Time: to.Ptr("17:30"),
	// 			TimeZone: to.Ptr("America/Los_Angeles"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*SchedulesClient) BeginDelete

func (client *SchedulesClient) BeginDelete(ctx context.Context, resourceGroupName string, projectName string, poolName string, scheduleName string, options *SchedulesClientBeginDeleteOptions) (*runtime.Poller[SchedulesClientDeleteResponse], error)

BeginDelete - Deletes a Schedule. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • scheduleName - The name of the schedule that uniquely identifies it.
  • options - SchedulesClientBeginDeleteOptions contains the optional parameters for the SchedulesClient.BeginDelete method.
Example

Generated from example definition: 2026-01-01-preview/Schedules_Delete.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewSchedulesClient().BeginDelete(ctx, "rg1", "TestProject", "DevPool", "autoShutdown", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	_, err = poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
}

func (*SchedulesClient) BeginUpdate

func (client *SchedulesClient) BeginUpdate(ctx context.Context, resourceGroupName string, projectName string, poolName string, scheduleName string, body ScheduleUpdate, options *SchedulesClientBeginUpdateOptions) (*runtime.Poller[SchedulesClientUpdateResponse], error)

BeginUpdate - Partially updates a Schedule. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • scheduleName - The name of the schedule that uniquely identifies it.
  • body - Represents a scheduled task.
  • options - SchedulesClientBeginUpdateOptions contains the optional parameters for the SchedulesClient.BeginUpdate method.
Example

Generated from example definition: 2026-01-01-preview/Schedules_Patch.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	poller, err := clientFactory.NewSchedulesClient().BeginUpdate(ctx, "rg1", "TestProject", "DevPool", "autoShutdown", armdevcenter.ScheduleUpdate{
		Properties: &armdevcenter.ScheduleUpdateProperties{
			Time: to.Ptr("18:00"),
		},
	}, nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	res, err := poller.PollUntilDone(ctx, nil)
	if err != nil {
		log.Fatalf("failed to poll the result: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.SchedulesClientUpdateResponse{
	// 	Schedule: armdevcenter.Schedule{
	// 		Name: to.Ptr("autoShutdown"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools/schedules"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown"),
	// 		Properties: &armdevcenter.ScheduleProperties{
	// 			Type: to.Ptr(armdevcenter.ScheduledTypeStopDevBox),
	// 			Frequency: to.Ptr(armdevcenter.ScheduledFrequencyDaily),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			State: to.Ptr(armdevcenter.ScheduleEnableStatusEnabled),
	// 			Time: to.Ptr("17:30"),
	// 			TimeZone: to.Ptr("America/Los_Angeles"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*SchedulesClient) Get

func (client *SchedulesClient) Get(ctx context.Context, resourceGroupName string, projectName string, poolName string, scheduleName string, options *SchedulesClientGetOptions) (SchedulesClientGetResponse, error)

Get - Gets a schedule resource. If the operation fails it returns an *azcore.ResponseError type.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • scheduleName - The name of the schedule that uniquely identifies it.
  • options - SchedulesClientGetOptions contains the optional parameters for the SchedulesClient.Get method.
Example

Generated from example definition: 2026-01-01-preview/Schedules_Get.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	res, err := clientFactory.NewSchedulesClient().Get(ctx, "rg1", "TestProject", "DevPool", "autoShutdown", nil)
	if err != nil {
		log.Fatalf("failed to finish the request: %v", err)
	}
	// You could use response here. We use blank identifier for just demo purposes.
	_ = res
	// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
	// res = armdevcenter.SchedulesClientGetResponse{
	// 	Schedule: armdevcenter.Schedule{
	// 		Name: to.Ptr("autoShutdown"),
	// 		Type: to.Ptr("Microsoft.DevCenter/pools/schedules"),
	// 		ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown"),
	// 		Properties: &armdevcenter.ScheduleProperties{
	// 			Type: to.Ptr(armdevcenter.ScheduledTypeStopDevBox),
	// 			Frequency: to.Ptr(armdevcenter.ScheduledFrequencyDaily),
	// 			ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
	// 			State: to.Ptr(armdevcenter.ScheduleEnableStatusEnabled),
	// 			Time: to.Ptr("17:30"),
	// 			TimeZone: to.Ptr("America/Los_Angeles"),
	// 		},
	// 		SystemData: &armdevcenter.SystemData{
	// 			CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
	// 			CreatedBy: to.Ptr("user1"),
	// 			CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 			LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
	// 			LastModifiedBy: to.Ptr("user1"),
	// 			LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
	// 		},
	// 	},
	// }
}

func (*SchedulesClient) NewListByPoolPager

func (client *SchedulesClient) NewListByPoolPager(resourceGroupName string, projectName string, poolName string, options *SchedulesClientListByPoolOptions) *runtime.Pager[SchedulesClientListByPoolResponse]

NewListByPoolPager - Lists schedules for a pool.

  • resourceGroupName - The name of the resource group. The name is case insensitive.
  • projectName - The name of the project.
  • poolName - Name of the pool.
  • options - SchedulesClientListByPoolOptions contains the optional parameters for the SchedulesClient.NewListByPoolPager method.
Example

Generated from example definition: 2026-01-01-preview/Schedules_ListByPool.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewSchedulesClient().NewListByPoolPager("rg1", "TestProject", "DevPool", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.SchedulesClientListByPoolResponse{
		// 	ScheduleListResult: armdevcenter.ScheduleListResult{
		// 		Value: []*armdevcenter.Schedule{
		// 			{
		// 				Name: to.Ptr("autoShutdown"),
		// 				Type: to.Ptr("Microsoft.DevCenter/pools/schedules"),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/resourceGroups/rg1/providers/Microsoft.DevCenter/projects/TestProject/pools/DevPool/schedules/autoShutdown"),
		// 				Properties: &armdevcenter.ScheduleProperties{
		// 					Type: to.Ptr(armdevcenter.ScheduledTypeStopDevBox),
		// 					Frequency: to.Ptr(armdevcenter.ScheduledFrequencyDaily),
		// 					ProvisioningState: to.Ptr(armdevcenter.ProvisioningStateSucceeded),
		// 					State: to.Ptr(armdevcenter.ScheduleEnableStatusEnabled),
		// 					Time: to.Ptr("17:30"),
		// 					TimeZone: to.Ptr("America/Los_Angeles"),
		// 				},
		// 				SystemData: &armdevcenter.SystemData{
		// 					CreatedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:00:36.993Z"); return t}()),
		// 					CreatedBy: to.Ptr("user1"),
		// 					CreatedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 					LastModifiedAt: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2020-11-18T18:30:36.993Z"); return t}()),
		// 					LastModifiedBy: to.Ptr("user1"),
		// 					LastModifiedByType: to.Ptr(armdevcenter.CreatedByTypeUser),
		// 				},
		// 			},
		// 		},
		// 	},
		// }
	}
}

type SchedulesClientBeginCreateOrUpdateOptions

type SchedulesClientBeginCreateOrUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string

	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SchedulesClientBeginCreateOrUpdateOptions contains the optional parameters for the SchedulesClient.BeginCreateOrUpdate method.

type SchedulesClientBeginDeleteOptions

type SchedulesClientBeginDeleteOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string

	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SchedulesClientBeginDeleteOptions contains the optional parameters for the SchedulesClient.BeginDelete method.

type SchedulesClientBeginUpdateOptions

type SchedulesClientBeginUpdateOptions struct {
	// Resumes the long-running operation from the provided token.
	ResumeToken string

	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SchedulesClientBeginUpdateOptions contains the optional parameters for the SchedulesClient.BeginUpdate method.

type SchedulesClientCreateOrUpdateResponse

type SchedulesClientCreateOrUpdateResponse struct {
	// Represents a Schedule to execute a task.
	Schedule
}

SchedulesClientCreateOrUpdateResponse contains the response from method SchedulesClient.BeginCreateOrUpdate.

type SchedulesClientDeleteResponse

type SchedulesClientDeleteResponse struct {
}

SchedulesClientDeleteResponse contains the response from method SchedulesClient.BeginDelete.

type SchedulesClientGetOptions

type SchedulesClientGetOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SchedulesClientGetOptions contains the optional parameters for the SchedulesClient.Get method.

type SchedulesClientGetResponse

type SchedulesClientGetResponse struct {
	// Represents a Schedule to execute a task.
	Schedule
}

SchedulesClientGetResponse contains the response from method SchedulesClient.Get.

type SchedulesClientListByPoolOptions

type SchedulesClientListByPoolOptions struct {
	// The maximum number of resources to return from the operation. Example: '$top=10'.
	Top *int32
}

SchedulesClientListByPoolOptions contains the optional parameters for the SchedulesClient.NewListByPoolPager method.

type SchedulesClientListByPoolResponse

type SchedulesClientListByPoolResponse struct {
	// Paged collection of Schedule items
	ScheduleListResult
}

SchedulesClientListByPoolResponse contains the response from method SchedulesClient.NewListByPoolPager.

type SchedulesClientUpdateResponse

type SchedulesClientUpdateResponse struct {
	// Represents a Schedule to execute a task.
	Schedule
}

SchedulesClientUpdateResponse contains the response from method SchedulesClient.BeginUpdate.

type ServerlessGpuSessionsMode

type ServerlessGpuSessionsMode string

ServerlessGpuSessionsMode - Indicates whether serverless GPU session access is enabled.

const (
	// ServerlessGpuSessionsModeAutoDeploy - Serverless GPU session access is enabled and necessary resources will be automatically
	// setup.
	ServerlessGpuSessionsModeAutoDeploy ServerlessGpuSessionsMode = "AutoDeploy"
	// ServerlessGpuSessionsModeDisabled - Serverless GPU session access is disabled.
	ServerlessGpuSessionsModeDisabled ServerlessGpuSessionsMode = "Disabled"
)

func PossibleServerlessGpuSessionsModeValues

func PossibleServerlessGpuSessionsModeValues() []ServerlessGpuSessionsMode

PossibleServerlessGpuSessionsModeValues returns the possible values for the ServerlessGpuSessionsMode const type.

type ServerlessGpuSessionsSettings

type ServerlessGpuSessionsSettings struct {
	// When specified, limits the maximum number of concurrent sessions across all pools in the project.
	MaxConcurrentSessionsPerProject *int32

	// The property indicates whether serverless GPU access is enabled on the project.
	ServerlessGpuSessionsMode *ServerlessGpuSessionsMode
}

ServerlessGpuSessionsSettings - Represents settings for serverless GPU access.

func (ServerlessGpuSessionsSettings) MarshalJSON

func (s ServerlessGpuSessionsSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type ServerlessGpuSessionsSettings.

func (*ServerlessGpuSessionsSettings) UnmarshalJSON

func (s *ServerlessGpuSessionsSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type ServerlessGpuSessionsSettings.

type SingleSignOnStatus

type SingleSignOnStatus string

SingleSignOnStatus - SingleSignOn (SSO) enable or disable status. Indicates whether Dev Boxes in the Pool will have SSO enabled or disabled.

const (
	// SingleSignOnStatusDisabled - Single Sign On is disabled.
	SingleSignOnStatusDisabled SingleSignOnStatus = "Disabled"
	// SingleSignOnStatusEnabled - Single Sign On is enabled.
	SingleSignOnStatusEnabled SingleSignOnStatus = "Enabled"
)

func PossibleSingleSignOnStatusValues

func PossibleSingleSignOnStatusValues() []SingleSignOnStatus

PossibleSingleSignOnStatusValues returns the possible values for the SingleSignOnStatus const type.

type StopOnDisconnectConfiguration

type StopOnDisconnectConfiguration struct {
	// The specified time in minutes to wait before stopping a Dev Box once disconnect is detected.
	GracePeriodMinutes *int32

	// Whether the feature to stop the Dev Box on disconnect once the grace period has lapsed is enabled.
	Status *StopOnDisconnectEnableStatus
}

StopOnDisconnectConfiguration - Stop on disconnect configuration settings for Dev Boxes created in this pool.

func (StopOnDisconnectConfiguration) MarshalJSON

func (s StopOnDisconnectConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type StopOnDisconnectConfiguration.

func (*StopOnDisconnectConfiguration) UnmarshalJSON

func (s *StopOnDisconnectConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type StopOnDisconnectConfiguration.

type StopOnDisconnectEnableStatus

type StopOnDisconnectEnableStatus string

StopOnDisconnectEnableStatus - Stop on disconnect enable or disable status. Indicates whether stop on disconnect to is either enabled or disabled.

const (
	// StopOnDisconnectEnableStatusDisabled - Stop on disconnect is disabled.
	StopOnDisconnectEnableStatusDisabled StopOnDisconnectEnableStatus = "Disabled"
	// StopOnDisconnectEnableStatusEnabled - Stop on disconnect is enabled.
	StopOnDisconnectEnableStatusEnabled StopOnDisconnectEnableStatus = "Enabled"
)

func PossibleStopOnDisconnectEnableStatusValues

func PossibleStopOnDisconnectEnableStatusValues() []StopOnDisconnectEnableStatus

PossibleStopOnDisconnectEnableStatusValues returns the possible values for the StopOnDisconnectEnableStatus const type.

type StopOnNoConnectConfiguration

type StopOnNoConnectConfiguration struct {
	// The specified time in minutes to wait before stopping a Dev Box if no connection is made.
	GracePeriodMinutes *int32

	// Enables the feature to stop a started Dev Box when it has not been connected to, once the grace period has lapsed.
	Status *StopOnNoConnectEnableStatus
}

StopOnNoConnectConfiguration - Stop on no connect configuration settings for Dev Boxes created in this pool.

func (StopOnNoConnectConfiguration) MarshalJSON

func (s StopOnNoConnectConfiguration) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type StopOnNoConnectConfiguration.

func (*StopOnNoConnectConfiguration) UnmarshalJSON

func (s *StopOnNoConnectConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type StopOnNoConnectConfiguration.

type StopOnNoConnectEnableStatus

type StopOnNoConnectEnableStatus string

StopOnNoConnectEnableStatus - Stop on no connect enable or disable status.

const (
	// StopOnNoConnectEnableStatusDisabled - Stop on no connect is disabled.
	StopOnNoConnectEnableStatusDisabled StopOnNoConnectEnableStatus = "Disabled"
	// StopOnNoConnectEnableStatusEnabled - Stop on no connect is enabled.
	StopOnNoConnectEnableStatusEnabled StopOnNoConnectEnableStatus = "Enabled"
)

func PossibleStopOnNoConnectEnableStatusValues

func PossibleStopOnNoConnectEnableStatusValues() []StopOnNoConnectEnableStatus

PossibleStopOnNoConnectEnableStatusValues returns the possible values for the StopOnNoConnectEnableStatus const type.

type SyncErrorDetails

type SyncErrorDetails struct {
	// READ-ONLY; Catalog items that have conflicting names.
	Conflicts []*CatalogConflictError

	// READ-ONLY; Errors that occured during synchronization.
	Errors []*CatalogSyncError

	// READ-ONLY; Error information for the overall synchronization operation.
	OperationError *CatalogErrorDetails
}

SyncErrorDetails - Synchronization error details.

func (SyncErrorDetails) MarshalJSON

func (s SyncErrorDetails) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SyncErrorDetails.

func (*SyncErrorDetails) UnmarshalJSON

func (s *SyncErrorDetails) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SyncErrorDetails.

type SyncStats

type SyncStats struct {
	// Indicates catalog item types that were synced.
	SyncedCatalogItemTypes []*CatalogItemType

	// READ-ONLY; Count of catalog items added during synchronization.
	Added *int32

	// READ-ONLY; Count of catalog items removed during synchronization.
	Removed *int32

	// READ-ONLY; Count of synchronization errors that occured during synchronization.
	SynchronizationErrors *int32

	// READ-ONLY; Count of catalog items that were unchanged during synchronization.
	Unchanged *int32

	// READ-ONLY; Count of catalog items updated during synchronization.
	Updated *int32

	// READ-ONLY; Count of catalog items that had validation errors during synchronization.
	ValidationErrors *int32
}

SyncStats - Stats of the synchronization.

func (SyncStats) MarshalJSON

func (s SyncStats) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SyncStats.

func (*SyncStats) UnmarshalJSON

func (s *SyncStats) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SyncStats.

type SystemData

type SystemData struct {
	// The timestamp of resource creation (UTC).
	CreatedAt *time.Time

	// The identity that created the resource.
	CreatedBy *string

	// The type of identity that created the resource.
	CreatedByType *CreatedByType

	// The timestamp of resource last modification (UTC)
	LastModifiedAt *time.Time

	// The identity that last modified the resource.
	LastModifiedBy *string

	// The type of identity that last modified the resource.
	LastModifiedByType *CreatedByType
}

SystemData - Metadata pertaining to creation and last modification of the resource.

func (SystemData) MarshalJSON

func (s SystemData) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type SystemData.

func (*SystemData) UnmarshalJSON

func (s *SystemData) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type SystemData.

type Update

type Update struct {
	// Managed identity properties.
	Identity *ManagedServiceIdentity

	// The geo-location where the resource lives.
	Location *string

	// Properties of a Dev Center to be updated.
	Properties *UpdateProperties

	// Resource tags.
	Tags map[string]*string
}

Update - The devcenter resource for partial updates. Properties not provided in the update request will not be changed.

func (Update) MarshalJSON

func (u Update) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Update.

func (*Update) UnmarshalJSON

func (u *Update) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Update.

type UpdateProperties

type UpdateProperties struct {
	// Settings to be used in the provisioning of all Dev Boxes that belong to this dev center.
	DevBoxProvisioningSettings *DevBoxProvisioningSettings

	// The display name of the devcenter.
	DisplayName *string

	// Encryption settings to be used for server-side encryption for proprietary content (such as catalogs, logs, customizations).
	Encryption *Encryption

	// Network settings that will be enforced on network resources associated with the Dev Center.
	NetworkSettings *NetworkSettings

	// Dev Center settings to be used when associating a project with a catalog.
	ProjectCatalogSettings *ProjectCatalogSettingsInfo
}

UpdateProperties - Properties of the devcenter. These properties can be updated after the resource has been created.

func (UpdateProperties) MarshalJSON

func (u UpdateProperties) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UpdateProperties.

func (*UpdateProperties) UnmarshalJSON

func (u *UpdateProperties) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UpdateProperties.

type Usage

type Usage struct {
	// The current usage.
	CurrentValue *int64

	// The fully qualified arm resource id.
	ID *string

	// The limit integer.
	Limit *int64

	// The name.
	Name *UsageName

	// The unit details.
	Unit *UsageUnit
}

Usage - The core usage details.

func (Usage) MarshalJSON

func (u Usage) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type Usage.

func (*Usage) UnmarshalJSON

func (u *Usage) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type Usage.

type UsageName

type UsageName struct {
	// The localized name of the resource.
	LocalizedValue *string

	// The name of the resource.
	Value *string
}

UsageName - The Usage Names.

func (UsageName) MarshalJSON

func (u UsageName) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UsageName.

func (*UsageName) UnmarshalJSON

func (u *UsageName) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UsageName.

type UsageUnit

type UsageUnit string

UsageUnit - The unit details.

const (
	// UsageUnitCount - Count.
	UsageUnitCount UsageUnit = "Count"
)

func PossibleUsageUnitValues

func PossibleUsageUnitValues() []UsageUnit

PossibleUsageUnitValues returns the possible values for the UsageUnit const type.

type UsagesClient

type UsagesClient struct {
	// contains filtered or unexported fields
}

UsagesClient contains the methods for the Usages group. Don't use this type directly, use NewUsagesClient() instead.

Generated from API version 2026-01-01-preview

func NewUsagesClient

func NewUsagesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*UsagesClient, error)

NewUsagesClient creates a new instance of UsagesClient with the specified values.

  • subscriptionID - The ID of the target subscription. The value must be an UUID.
  • credential - used to authorize requests. Usually a credential from azidentity.
  • options - Contains optional client configuration. Pass nil to accept the default values.

func (*UsagesClient) NewListByLocationPager

func (client *UsagesClient) NewListByLocationPager(location string, options *UsagesClientListByLocationOptions) *runtime.Pager[UsagesClientListByLocationResponse]

NewListByLocationPager - Lists the current usages and limits in this location for the provided subscription.

  • location - The location name.
  • options - UsagesClientListByLocationOptions contains the optional parameters for the UsagesClient.NewListByLocationPager method.
Example

Generated from example definition: 2026-01-01-preview/Usages_ListByLocation.json

package main

import (
	"context"
	"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
	"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/devcenter/armdevcenter/v3"
	"log"
)

func main() {
	cred, err := azidentity.NewDefaultAzureCredential(nil)
	if err != nil {
		log.Fatalf("failed to obtain a credential: %v", err)
	}
	ctx := context.Background()
	clientFactory, err := armdevcenter.NewClientFactory("0ac520ee-14c0-480f-b6c9-0a90c58fffff", cred, nil)
	if err != nil {
		log.Fatalf("failed to create client: %v", err)
	}
	pager := clientFactory.NewUsagesClient().NewListByLocationPager("westus", nil)
	for pager.More() {
		page, err := pager.NextPage(ctx)
		if err != nil {
			log.Fatalf("failed to advance page: %v", err)
		}
		for _, v := range page.Value {
			// You could use page here. We use blank identifier for just demo purposes.
			_ = v
		}
		// If the HTTP response code is 200 as defined in example definition, your page structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
		// page = armdevcenter.UsagesClientListByLocationResponse{
		// 	ListUsagesResult: armdevcenter.ListUsagesResult{
		// 		Value: []*armdevcenter.Usage{
		// 			{
		// 				Name: &armdevcenter.UsageName{
		// 					Value: to.Ptr("devcenters"),
		// 				},
		// 				CurrentValue: to.Ptr[int64](2),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/Microsoft.DevCenter/locations/westus/quotas/devcenters"),
		// 				Limit: to.Ptr[int64](8),
		// 				Unit: to.Ptr(armdevcenter.UsageUnitCount),
		// 			},
		// 			{
		// 				Name: &armdevcenter.UsageName{
		// 					Value: to.Ptr("projects"),
		// 				},
		// 				CurrentValue: to.Ptr[int64](5),
		// 				ID: to.Ptr("/subscriptions/0ac520ee-14c0-480f-b6c9-0a90c58ffff/Microsoft.DevCenter/locations/westus/quotas/projects"),
		// 				Limit: to.Ptr[int64](30),
		// 				Unit: to.Ptr(armdevcenter.UsageUnitCount),
		// 			},
		// 		},
		// 	},
		// }
	}
}

type UsagesClientListByLocationOptions

type UsagesClientListByLocationOptions struct {
}

UsagesClientListByLocationOptions contains the optional parameters for the UsagesClient.NewListByLocationPager method.

type UsagesClientListByLocationResponse

type UsagesClientListByLocationResponse struct {
	// List of Core Usages.
	ListUsagesResult
}

UsagesClientListByLocationResponse contains the response from method UsagesClient.NewListByLocationPager.

type UserAssignedIdentity

type UserAssignedIdentity struct {
	// READ-ONLY; The client ID of the assigned identity.
	ClientID *string

	// READ-ONLY; The principal ID of the assigned identity.
	PrincipalID *string
}

UserAssignedIdentity - User assigned identity properties

func (UserAssignedIdentity) MarshalJSON

func (u UserAssignedIdentity) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UserAssignedIdentity.

func (*UserAssignedIdentity) UnmarshalJSON

func (u *UserAssignedIdentity) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UserAssignedIdentity.

type UserCustomizationsEnableStatus

type UserCustomizationsEnableStatus string

UserCustomizationsEnableStatus - Indicates whether user customizations are enabled.

const (
	// UserCustomizationsEnableStatusDisabled - User customizations are disabled.
	UserCustomizationsEnableStatusDisabled UserCustomizationsEnableStatus = "Disabled"
	// UserCustomizationsEnableStatusEnabled - User customizations are enabled.
	UserCustomizationsEnableStatusEnabled UserCustomizationsEnableStatus = "Enabled"
)

func PossibleUserCustomizationsEnableStatusValues

func PossibleUserCustomizationsEnableStatusValues() []UserCustomizationsEnableStatus

PossibleUserCustomizationsEnableStatusValues returns the possible values for the UserCustomizationsEnableStatus const type.

type UserRoleAssignmentValue

type UserRoleAssignmentValue struct {
	// A map of roles to assign to the parent user.
	Roles map[string]*EnvironmentRole
}

UserRoleAssignmentValue - Mapping of user object ID to role assignments.

func (UserRoleAssignmentValue) MarshalJSON

func (u UserRoleAssignmentValue) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type UserRoleAssignmentValue.

func (*UserRoleAssignmentValue) UnmarshalJSON

func (u *UserRoleAssignmentValue) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type UserRoleAssignmentValue.

type VirtualNetworkType

type VirtualNetworkType string

VirtualNetworkType - Indicates a pool uses a Virtual Network managed by Microsoft (Managed), or a customer provided Network (Unmanaged).

const (
	// VirtualNetworkTypeManaged - Virtual Network is managed by Microsoft.
	VirtualNetworkTypeManaged VirtualNetworkType = "Managed"
	// VirtualNetworkTypeUnmanaged - Virtual Network is managed by user.
	VirtualNetworkTypeUnmanaged VirtualNetworkType = "Unmanaged"
)

func PossibleVirtualNetworkTypeValues

func PossibleVirtualNetworkTypeValues() []VirtualNetworkType

PossibleVirtualNetworkTypeValues returns the possible values for the VirtualNetworkType const type.

type WorkspaceStorageMode

type WorkspaceStorageMode string

WorkspaceStorageMode - Indicates whether workspace storage is enabled.

const (
	// WorkspaceStorageModeAutoDeploy - Workspace storage is enabled and necessary resources will be automatically setup.
	WorkspaceStorageModeAutoDeploy WorkspaceStorageMode = "AutoDeploy"
	// WorkspaceStorageModeDisabled - Workspace storage is disabled.
	WorkspaceStorageModeDisabled WorkspaceStorageMode = "Disabled"
)

func PossibleWorkspaceStorageModeValues

func PossibleWorkspaceStorageModeValues() []WorkspaceStorageMode

PossibleWorkspaceStorageModeValues returns the possible values for the WorkspaceStorageMode const type.

type WorkspaceStorageSettings

type WorkspaceStorageSettings struct {
	// Indicates whether workspace storage is enabled.
	WorkspaceStorageMode *WorkspaceStorageMode
}

WorkspaceStorageSettings - Settings to be used for workspace storage.

func (WorkspaceStorageSettings) MarshalJSON

func (w WorkspaceStorageSettings) MarshalJSON() ([]byte, error)

MarshalJSON implements the json.Marshaller interface for type WorkspaceStorageSettings.

func (*WorkspaceStorageSettings) UnmarshalJSON

func (w *WorkspaceStorageSettings) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the json.Unmarshaller interface for type WorkspaceStorageSettings.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL