Documentation ¶
Index ¶
- type ActionType
- type Amount
- type ClientFactory
- func (c *ClientFactory) NewGrantsClient() *GrantsClient
- func (c *ClientFactory) NewJoinRequestsClient() *JoinRequestsClient
- func (c *ClientFactory) NewLabsClient() *LabsClient
- func (c *ClientFactory) NewManagementClient() *ManagementClient
- func (c *ClientFactory) NewOperationsClient() *OperationsClient
- func (c *ClientFactory) NewStudentLabsClient() *StudentLabsClient
- func (c *ClientFactory) NewStudentsClient() *StudentsClient
- type CreatedByType
- type ErrorResponse
- type ErrorResponseBody
- type GrantDetailProperties
- type GrantDetails
- type GrantListResponse
- type GrantStatus
- type GrantType
- type GrantsClient
- func (client *GrantsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, ...) (GrantsClientGetResponse, error)
- func (client *GrantsClient) NewListAllPager(options *GrantsClientListAllOptions) *runtime.Pager[GrantsClientListAllResponse]
- func (client *GrantsClient) NewListPager(billingAccountName string, billingProfileName string, ...) *runtime.Pager[GrantsClientListResponse]
- type GrantsClientGetOptions
- type GrantsClientGetResponse
- type GrantsClientListAllOptions
- type GrantsClientListAllResponse
- type GrantsClientListOptions
- type GrantsClientListResponse
- type InviteCodeGenerateRequest
- type JoinRequestDetails
- type JoinRequestList
- type JoinRequestProperties
- type JoinRequestStatus
- type JoinRequestsClient
- func (client *JoinRequestsClient) Approve(ctx context.Context, billingAccountName string, billingProfileName string, ...) (JoinRequestsClientApproveResponse, error)
- func (client *JoinRequestsClient) Deny(ctx context.Context, billingAccountName string, billingProfileName string, ...) (JoinRequestsClientDenyResponse, error)
- func (client *JoinRequestsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, ...) (JoinRequestsClientGetResponse, error)
- func (client *JoinRequestsClient) NewListPager(billingAccountName string, billingProfileName string, ...) *runtime.Pager[JoinRequestsClientListResponse]
- type JoinRequestsClientApproveOptions
- type JoinRequestsClientApproveResponse
- type JoinRequestsClientDenyOptions
- type JoinRequestsClientDenyResponse
- type JoinRequestsClientGetOptions
- type JoinRequestsClientGetResponse
- type JoinRequestsClientListOptions
- type JoinRequestsClientListResponse
- type LabDetails
- type LabListResult
- type LabProperties
- type LabStatus
- type LabsClient
- func (client *LabsClient) CreateOrUpdate(ctx context.Context, billingAccountName string, billingProfileName string, ...) (LabsClientCreateOrUpdateResponse, error)
- func (client *LabsClient) Delete(ctx context.Context, billingAccountName string, billingProfileName string, ...) (LabsClientDeleteResponse, error)
- func (client *LabsClient) GenerateInviteCode(ctx context.Context, billingAccountName string, billingProfileName string, ...) (LabsClientGenerateInviteCodeResponse, error)
- func (client *LabsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, ...) (LabsClientGetResponse, error)
- func (client *LabsClient) NewListAllPager(billingAccountName string, billingProfileName string, ...) *runtime.Pager[LabsClientListAllResponse]
- func (client *LabsClient) NewListPager(billingAccountName string, billingProfileName string, ...) *runtime.Pager[LabsClientListResponse]
- type LabsClientCreateOrUpdateOptions
- type LabsClientCreateOrUpdateResponse
- type LabsClientDeleteOptions
- type LabsClientDeleteResponse
- type LabsClientGenerateInviteCodeOptions
- type LabsClientGenerateInviteCodeResponse
- type LabsClientGetOptions
- type LabsClientGetResponse
- type LabsClientListAllOptions
- type LabsClientListAllResponse
- type LabsClientListOptions
- type LabsClientListResponse
- type ManagementClient
- type ManagementClientRedeemInvitationCodeOptions
- type ManagementClientRedeemInvitationCodeResponse
- type Operation
- type OperationDisplay
- type OperationListResult
- type OperationsClient
- type OperationsClientListOptions
- type OperationsClientListResponse
- type Origin
- type RedeemRequest
- type Resource
- type StudentDetails
- type StudentLabDetails
- type StudentLabListResult
- type StudentLabProperties
- type StudentLabStatus
- type StudentLabsClient
- type StudentLabsClientGetOptions
- type StudentLabsClientGetResponse
- type StudentLabsClientListAllOptions
- type StudentLabsClientListAllResponse
- type StudentListResult
- type StudentProperties
- type StudentRole
- type StudentsClient
- func (client *StudentsClient) CreateOrUpdate(ctx context.Context, billingAccountName string, billingProfileName string, ...) (StudentsClientCreateOrUpdateResponse, error)
- func (client *StudentsClient) Delete(ctx context.Context, billingAccountName string, billingProfileName string, ...) (StudentsClientDeleteResponse, error)
- func (client *StudentsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, ...) (StudentsClientGetResponse, error)
- func (client *StudentsClient) NewListPager(billingAccountName string, billingProfileName string, ...) *runtime.Pager[StudentsClientListResponse]
- type StudentsClientCreateOrUpdateOptions
- type StudentsClientCreateOrUpdateResponse
- type StudentsClientDeleteOptions
- type StudentsClientDeleteResponse
- type StudentsClientGetOptions
- type StudentsClientGetResponse
- type StudentsClientListOptions
- type StudentsClientListResponse
- type SystemData
Examples ¶
- GrantsClient.Get (Grant)
- GrantsClient.Get (GrantIncludeAllocatedBudget)
- GrantsClient.NewListAllPager (GrantList)
- GrantsClient.NewListAllPager (GrantListIncludeAllocatedBudget)
- GrantsClient.NewListPager (GrantList)
- GrantsClient.NewListPager (GrantListIncludeAllocatedBudget)
- JoinRequestsClient.Approve
- JoinRequestsClient.Get
- JoinRequestsClient.NewListPager
- LabsClient.CreateOrUpdate
- LabsClient.Delete
- LabsClient.GenerateInviteCode
- LabsClient.Get (Lab)
- LabsClient.Get (LabIncludeBudget)
- LabsClient.NewListAllPager (LabList)
- LabsClient.NewListAllPager (LabListIncludeBudget)
- LabsClient.NewListPager (LabListWithInvoiceSectionName)
- LabsClient.NewListPager (LabListWithInvoiceSectionNameIncludeBudget)
- ManagementClient.RedeemInvitationCode
- OperationsClient.List
- StudentLabsClient.Get
- StudentLabsClient.NewListAllPager
- StudentsClient.CreateOrUpdate
- StudentsClient.Delete
- StudentsClient.Get
- StudentsClient.NewListPager
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActionType ¶
type ActionType string
ActionType - Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs.
const (
ActionTypeInternal ActionType = "Internal"
)
func PossibleActionTypeValues ¶
func PossibleActionTypeValues() []ActionType
PossibleActionTypeValues returns the possible values for the ActionType const type.
type Amount ¶
type Amount struct { // The type of currency being used for the value. Currency *string // Amount value. Value *float32 }
Amount - The amount.
func (Amount) MarshalJSON ¶ added in v0.2.0
MarshalJSON implements the json.Marshaller interface for type Amount.
func (*Amount) UnmarshalJSON ¶ added in v0.2.0
UnmarshalJSON implements the json.Unmarshaller interface for type Amount.
type ClientFactory ¶ added in v0.3.0
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 ¶ added in v0.3.0
func NewClientFactory(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.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*ClientFactory) NewGrantsClient ¶ added in v0.3.0
func (c *ClientFactory) NewGrantsClient() *GrantsClient
NewGrantsClient creates a new instance of GrantsClient.
func (*ClientFactory) NewJoinRequestsClient ¶ added in v0.3.0
func (c *ClientFactory) NewJoinRequestsClient() *JoinRequestsClient
NewJoinRequestsClient creates a new instance of JoinRequestsClient.
func (*ClientFactory) NewLabsClient ¶ added in v0.3.0
func (c *ClientFactory) NewLabsClient() *LabsClient
NewLabsClient creates a new instance of LabsClient.
func (*ClientFactory) NewManagementClient ¶ added in v0.3.0
func (c *ClientFactory) NewManagementClient() *ManagementClient
NewManagementClient creates a new instance of ManagementClient.
func (*ClientFactory) NewOperationsClient ¶ added in v0.3.0
func (c *ClientFactory) NewOperationsClient() *OperationsClient
NewOperationsClient creates a new instance of OperationsClient.
func (*ClientFactory) NewStudentLabsClient ¶ added in v0.3.0
func (c *ClientFactory) NewStudentLabsClient() *StudentLabsClient
NewStudentLabsClient creates a new instance of StudentLabsClient.
func (*ClientFactory) NewStudentsClient ¶ added in v0.3.0
func (c *ClientFactory) NewStudentsClient() *StudentsClient
NewStudentsClient creates a new instance of StudentsClient.
type CreatedByType ¶
type CreatedByType string
CreatedByType - The type of identity that created the resource.
const ( CreatedByTypeApplication CreatedByType = "Application" CreatedByTypeKey CreatedByType = "Key" CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity" CreatedByTypeUser CreatedByType = "User" )
func PossibleCreatedByTypeValues ¶
func PossibleCreatedByTypeValues() []CreatedByType
PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type.
type ErrorResponse ¶
type ErrorResponse struct { // Error code Code *string // Error message indicating why the operation failed. Message *string }
ErrorResponse - Describes the format of Error response.
func (ErrorResponse) MarshalJSON ¶ added in v0.2.0
func (e ErrorResponse) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type ErrorResponse.
func (*ErrorResponse) UnmarshalJSON ¶ added in v0.2.0
func (e *ErrorResponse) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type ErrorResponse.
type ErrorResponseBody ¶
type ErrorResponseBody struct { // The details of the error. Error *ErrorResponse }
ErrorResponseBody - Error response indicates that the service is not able to process the incoming request. The reason is provided in the error message.
func (ErrorResponseBody) MarshalJSON ¶ added in v0.2.0
func (e ErrorResponseBody) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type ErrorResponseBody.
func (*ErrorResponseBody) UnmarshalJSON ¶ added in v0.2.0
func (e *ErrorResponseBody) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type ErrorResponseBody.
type GrantDetailProperties ¶
type GrantDetailProperties struct { // READ-ONLY; allocated budget AllocatedBudget *Amount // READ-ONLY; Grant Effective Date EffectiveDate *time.Time // READ-ONLY; Expiration Date ExpirationDate *time.Time // READ-ONLY; Offer Cap OfferCap *Amount // READ-ONLY; Grant Offer Type OfferType *GrantType // READ-ONLY; Grant status Status *GrantStatus }
GrantDetailProperties - Grant detail properties
func (GrantDetailProperties) MarshalJSON ¶
func (g GrantDetailProperties) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type GrantDetailProperties.
func (*GrantDetailProperties) UnmarshalJSON ¶
func (g *GrantDetailProperties) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type GrantDetailProperties.
type GrantDetails ¶
type GrantDetails struct { // Grant detail properties. Properties *GrantDetailProperties // 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 }
GrantDetails - Grant details.
func (GrantDetails) MarshalJSON ¶ added in v0.2.0
func (g GrantDetails) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type GrantDetails.
func (*GrantDetails) UnmarshalJSON ¶ added in v0.2.0
func (g *GrantDetails) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type GrantDetails.
type GrantListResponse ¶
type GrantListResponse struct { // READ-ONLY; The link (url) to the next page of results. NextLink *string // READ-ONLY; The list of labs. Value []*GrantDetails }
GrantListResponse - List of Grants info.
func (GrantListResponse) MarshalJSON ¶ added in v0.2.0
func (g GrantListResponse) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type GrantListResponse.
func (*GrantListResponse) UnmarshalJSON ¶ added in v0.2.0
func (g *GrantListResponse) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type GrantListResponse.
type GrantStatus ¶
type GrantStatus string
GrantStatus - Grant status
const ( GrantStatusActive GrantStatus = "Active" GrantStatusInactive GrantStatus = "Inactive" )
func PossibleGrantStatusValues ¶
func PossibleGrantStatusValues() []GrantStatus
PossibleGrantStatusValues returns the possible values for the GrantStatus const type.
type GrantType ¶
type GrantType string
GrantType - Grant Offer Type
func PossibleGrantTypeValues ¶
func PossibleGrantTypeValues() []GrantType
PossibleGrantTypeValues returns the possible values for the GrantType const type.
type GrantsClient ¶
type GrantsClient struct {
// contains filtered or unexported fields
}
GrantsClient contains the methods for the Grants group. Don't use this type directly, use NewGrantsClient() instead.
func NewGrantsClient ¶
func NewGrantsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*GrantsClient, error)
NewGrantsClient creates a new instance of GrantsClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*GrantsClient) Get ¶
func (client *GrantsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, options *GrantsClientGetOptions) (GrantsClientGetResponse, error)
Get - Get details for a specific grant linked to the provided billing account and billing profile. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- options - GrantsClientGetOptions contains the optional parameters for the GrantsClient.Get method.
Example (Grant) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/Grant.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewGrantsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", &armeducation.GrantsClientGetOptions{IncludeAllocatedBudget: to.Ptr(false)}) 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.GrantDetails = armeducation.GrantDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // OfferType: to.Ptr(armeducation.GrantTypeStudent), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // } }
Output:
Example (GrantIncludeAllocatedBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GrantIncludeAllocatedBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewGrantsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", &armeducation.GrantsClientGetOptions{IncludeAllocatedBudget: to.Ptr(false)}) 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.GrantDetails = armeducation.GrantDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // AllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](0), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // OfferType: to.Ptr(armeducation.GrantTypeStudent), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // } }
Output:
func (*GrantsClient) NewListAllPager ¶
func (client *GrantsClient) NewListAllPager(options *GrantsClientListAllOptions) *runtime.Pager[GrantsClientListAllResponse]
NewListAllPager - Get a list of grants that Microsoft has provided.
Generated from API version 2021-12-01-preview
- options - GrantsClientListAllOptions contains the optional parameters for the GrantsClient.NewListAllPager method.
Example (GrantList) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GrantList.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewGrantsClient().NewListAllPager(&armeducation.GrantsClientListAllOptions{IncludeAllocatedBudget: to.Ptr(false)}) 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.GrantListResponse = armeducation.GrantListResponse{ // Value: []*armeducation.GrantDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](1000), // }, // OfferType: to.Ptr(armeducation.GrantTypeAcademic), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // }}, // } } }
Output:
Example (GrantListIncludeAllocatedBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GrantListIncludeAllocatedBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewGrantsClient().NewListAllPager(&armeducation.GrantsClientListAllOptions{IncludeAllocatedBudget: to.Ptr(true)}) 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.GrantListResponse = armeducation.GrantListResponse{ // Value: []*armeducation.GrantDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // AllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](0), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](1000), // }, // OfferType: to.Ptr(armeducation.GrantTypeAcademic), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // }}, // } } }
Output:
func (*GrantsClient) NewListPager ¶
func (client *GrantsClient) NewListPager(billingAccountName string, billingProfileName string, options *GrantsClientListOptions) *runtime.Pager[GrantsClientListResponse]
NewListPager - Get details for a specific grant linked to the provided billing account and billing profile.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- options - GrantsClientListOptions contains the optional parameters for the GrantsClient.NewListPager method.
Example (GrantList) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GrantDefaultList.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewGrantsClient().NewListPager("{billingAccountName}", "{billingProfileName}", &armeducation.GrantsClientListOptions{IncludeAllocatedBudget: to.Ptr(false)}) 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.GrantListResponse = armeducation.GrantListResponse{ // Value: []*armeducation.GrantDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](1000), // }, // OfferType: to.Ptr(armeducation.GrantTypeAcademic), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // }}, // } } }
Output:
Example (GrantListIncludeAllocatedBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GrantDefaultListIncludeAllocatedBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewGrantsClient().NewListPager("{billingAccountName}", "{billingProfileName}", &armeducation.GrantsClientListOptions{IncludeAllocatedBudget: to.Ptr(false)}) 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.GrantListResponse = armeducation.GrantListResponse{ // Value: []*armeducation.GrantDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Grants"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/providers/Microsoft.Education/grants/default"), // Properties: &armeducation.GrantDetailProperties{ // AllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](0), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T09:08:05.505Z"); return t}()), // OfferCap: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](1000), // }, // OfferType: to.Ptr(armeducation.GrantTypeAcademic), // Status: to.Ptr(armeducation.GrantStatusActive), // }, // }}, // } } }
Output:
type GrantsClientGetOptions ¶
type GrantsClientGetOptions struct { // May be used to include information about budget that has been allocated. IncludeAllocatedBudget *bool }
GrantsClientGetOptions contains the optional parameters for the GrantsClient.Get method.
type GrantsClientGetResponse ¶
type GrantsClientGetResponse struct { // Grant details. GrantDetails }
GrantsClientGetResponse contains the response from method GrantsClient.Get.
type GrantsClientListAllOptions ¶
type GrantsClientListAllOptions struct { // May be used to include information about budget that has been allocated. IncludeAllocatedBudget *bool }
GrantsClientListAllOptions contains the optional parameters for the GrantsClient.NewListAllPager method.
type GrantsClientListAllResponse ¶
type GrantsClientListAllResponse struct { // List of Grants info. GrantListResponse }
GrantsClientListAllResponse contains the response from method GrantsClient.NewListAllPager.
type GrantsClientListOptions ¶
type GrantsClientListOptions struct { // May be used to include information about budget that has been allocated. IncludeAllocatedBudget *bool }
GrantsClientListOptions contains the optional parameters for the GrantsClient.NewListPager method.
type GrantsClientListResponse ¶
type GrantsClientListResponse struct { // List of Grants info. GrantListResponse }
GrantsClientListResponse contains the response from method GrantsClient.NewListPager.
type InviteCodeGenerateRequest ¶
type InviteCodeGenerateRequest struct { // the total number of students that can be accepted to the lab. MaxStudentCount *float32 }
InviteCodeGenerateRequest - invite code generate request.
func (InviteCodeGenerateRequest) MarshalJSON ¶ added in v0.2.0
func (i InviteCodeGenerateRequest) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type InviteCodeGenerateRequest.
func (*InviteCodeGenerateRequest) UnmarshalJSON ¶ added in v0.2.0
func (i *InviteCodeGenerateRequest) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type InviteCodeGenerateRequest.
type JoinRequestDetails ¶
type JoinRequestDetails struct { // join request properties. Properties *JoinRequestProperties // 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 }
JoinRequestDetails - join requests.
func (JoinRequestDetails) MarshalJSON ¶ added in v0.2.0
func (j JoinRequestDetails) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type JoinRequestDetails.
func (*JoinRequestDetails) UnmarshalJSON ¶ added in v0.2.0
func (j *JoinRequestDetails) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type JoinRequestDetails.
type JoinRequestList ¶
type JoinRequestList struct { // READ-ONLY; the link (url) to the next page of results. NextLink *string // READ-ONLY; The list of requests. Value []*JoinRequestDetails }
JoinRequestList - list of join requests.
func (JoinRequestList) MarshalJSON ¶ added in v0.2.0
func (j JoinRequestList) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type JoinRequestList.
func (*JoinRequestList) UnmarshalJSON ¶ added in v0.2.0
func (j *JoinRequestList) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type JoinRequestList.
type JoinRequestProperties ¶
type JoinRequestProperties struct { // join request email Email *string // First Name FirstName *string // Last Name LastName *string // Join request status Status *JoinRequestStatus }
JoinRequestProperties - Join request properties.
func (JoinRequestProperties) MarshalJSON ¶ added in v0.2.0
func (j JoinRequestProperties) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type JoinRequestProperties.
func (*JoinRequestProperties) UnmarshalJSON ¶ added in v0.2.0
func (j *JoinRequestProperties) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type JoinRequestProperties.
type JoinRequestStatus ¶
type JoinRequestStatus string
JoinRequestStatus - Join request status
const ( JoinRequestStatusDenied JoinRequestStatus = "Denied" JoinRequestStatusPending JoinRequestStatus = "Pending" )
func PossibleJoinRequestStatusValues ¶
func PossibleJoinRequestStatusValues() []JoinRequestStatus
PossibleJoinRequestStatusValues returns the possible values for the JoinRequestStatus const type.
type JoinRequestsClient ¶
type JoinRequestsClient struct {
// contains filtered or unexported fields
}
JoinRequestsClient contains the methods for the JoinRequests group. Don't use this type directly, use NewJoinRequestsClient() instead.
func NewJoinRequestsClient ¶
func NewJoinRequestsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*JoinRequestsClient, error)
NewJoinRequestsClient creates a new instance of JoinRequestsClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*JoinRequestsClient) Approve ¶
func (client *JoinRequestsClient) Approve(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, joinRequestName string, options *JoinRequestsClientApproveOptions) (JoinRequestsClientApproveResponse, error)
Approve - Approve student joining the redeemable lab If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- joinRequestName - Join name
- options - JoinRequestsClientApproveOptions contains the optional parameters for the JoinRequestsClient.Approve method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/JoinRequestApproveAndDeny.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } _, err = clientFactory.NewJoinRequestsClient().Approve(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", "{joinRequestName}", nil) if err != nil { log.Fatalf("failed to finish the request: %v", err) } }
Output:
func (*JoinRequestsClient) Deny ¶
func (client *JoinRequestsClient) Deny(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, joinRequestName string, options *JoinRequestsClientDenyOptions) (JoinRequestsClientDenyResponse, error)
Deny - Deny student joining the redeemable lab If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- joinRequestName - Join name
- options - JoinRequestsClientDenyOptions contains the optional parameters for the JoinRequestsClient.Deny method.
func (*JoinRequestsClient) Get ¶
func (client *JoinRequestsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, joinRequestName string, options *JoinRequestsClientGetOptions) (JoinRequestsClientGetResponse, error)
Get - get student join requests If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- joinRequestName - Join name
- options - JoinRequestsClientGetOptions contains the optional parameters for the JoinRequestsClient.Get method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/JoinRequest.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewJoinRequestsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", "{joinRequestName}", 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.JoinRequestDetails = armeducation.JoinRequestDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/JoinRequest"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default/joinRequests/{joinRequestName}"), // Properties: &armeducation.JoinRequestProperties{ // Email: to.Ptr("test@contoso.com"), // FirstName: to.Ptr("test"), // LastName: to.Ptr("user"), // Status: to.Ptr(armeducation.JoinRequestStatusPending), // }, // } }
Output:
func (*JoinRequestsClient) NewListPager ¶
func (client *JoinRequestsClient) NewListPager(billingAccountName string, billingProfileName string, invoiceSectionName string, options *JoinRequestsClientListOptions) *runtime.Pager[JoinRequestsClientListResponse]
NewListPager - get student join requests
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- options - JoinRequestsClientListOptions contains the optional parameters for the JoinRequestsClient.NewListPager method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/JoinRequestList.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewJoinRequestsClient().NewListPager("{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.JoinRequestsClientListOptions{IncludeDenied: to.Ptr(false)}) 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.JoinRequestList = armeducation.JoinRequestList{ // Value: []*armeducation.JoinRequestDetails{ // { // Name: to.Ptr("{joinRequestName}"), // Type: to.Ptr("Microsoft.Education/JoinRequest"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default/joinRequests/{joinRequestName}"), // Properties: &armeducation.JoinRequestProperties{ // Email: to.Ptr("test@contoso.com"), // FirstName: to.Ptr("test"), // LastName: to.Ptr("user"), // Status: to.Ptr(armeducation.JoinRequestStatusPending), // }, // }}, // } } }
Output:
type JoinRequestsClientApproveOptions ¶
type JoinRequestsClientApproveOptions struct { }
JoinRequestsClientApproveOptions contains the optional parameters for the JoinRequestsClient.Approve method.
type JoinRequestsClientApproveResponse ¶
type JoinRequestsClientApproveResponse struct { }
JoinRequestsClientApproveResponse contains the response from method JoinRequestsClient.Approve.
type JoinRequestsClientDenyOptions ¶
type JoinRequestsClientDenyOptions struct { }
JoinRequestsClientDenyOptions contains the optional parameters for the JoinRequestsClient.Deny method.
type JoinRequestsClientDenyResponse ¶
type JoinRequestsClientDenyResponse struct { }
JoinRequestsClientDenyResponse contains the response from method JoinRequestsClient.Deny.
type JoinRequestsClientGetOptions ¶
type JoinRequestsClientGetOptions struct { }
JoinRequestsClientGetOptions contains the optional parameters for the JoinRequestsClient.Get method.
type JoinRequestsClientGetResponse ¶
type JoinRequestsClientGetResponse struct { // join requests. JoinRequestDetails }
JoinRequestsClientGetResponse contains the response from method JoinRequestsClient.Get.
type JoinRequestsClientListOptions ¶
type JoinRequestsClientListOptions struct { // Include denied IncludeDenied *bool }
JoinRequestsClientListOptions contains the optional parameters for the JoinRequestsClient.NewListPager method.
type JoinRequestsClientListResponse ¶
type JoinRequestsClientListResponse struct { // list of join requests. JoinRequestList }
JoinRequestsClientListResponse contains the response from method JoinRequestsClient.NewListPager.
type LabDetails ¶
type LabDetails struct { // Get lab response properties. Properties *LabProperties // 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 }
LabDetails - Lab details.
func (LabDetails) MarshalJSON ¶ added in v0.2.0
func (l LabDetails) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type LabDetails.
func (*LabDetails) UnmarshalJSON ¶ added in v0.2.0
func (l *LabDetails) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type LabDetails.
type LabListResult ¶
type LabListResult struct { // READ-ONLY; The link (url) to the next page of results. NextLink *string // READ-ONLY; The list of labs. Value []*LabDetails }
LabListResult - List of labs.
func (LabListResult) MarshalJSON ¶ added in v0.2.0
func (l LabListResult) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type LabListResult.
func (*LabListResult) UnmarshalJSON ¶ added in v0.2.0
func (l *LabListResult) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type LabListResult.
type LabProperties ¶
type LabProperties struct { // REQUIRED; Default monetary cap for each student in this lab BudgetPerStudent *Amount // REQUIRED; Detail description of this lab Description *string // REQUIRED; Lab Display Name DisplayName *string // REQUIRED; Default expiration date for each student in this lab ExpirationDate *time.Time // READ-ONLY; Lab creation date EffectiveDate *time.Time // READ-ONLY; invitation code for redeemable lab InvitationCode *string // READ-ONLY; the total number of students that can be accepted to the lab. MaxStudentCount *float32 // READ-ONLY; The status of this lab Status *LabStatus // READ-ONLY; Total allocated budget TotalAllocatedBudget *Amount // READ-ONLY; Total budget TotalBudget *Amount }
LabProperties - Lab detail result properties.
func (LabProperties) MarshalJSON ¶
func (l LabProperties) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type LabProperties.
func (*LabProperties) UnmarshalJSON ¶
func (l *LabProperties) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type LabProperties.
type LabStatus ¶
type LabStatus string
LabStatus - The status of this lab
func PossibleLabStatusValues ¶
func PossibleLabStatusValues() []LabStatus
PossibleLabStatusValues returns the possible values for the LabStatus const type.
type LabsClient ¶
type LabsClient struct {
// contains filtered or unexported fields
}
LabsClient contains the methods for the Labs group. Don't use this type directly, use NewLabsClient() instead.
func NewLabsClient ¶
func NewLabsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*LabsClient, error)
NewLabsClient creates a new instance of LabsClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*LabsClient) CreateOrUpdate ¶
func (client *LabsClient) CreateOrUpdate(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, parameters LabDetails, options *LabsClientCreateOrUpdateOptions) (LabsClientCreateOrUpdateResponse, error)
CreateOrUpdate - Create a new lab or update a previously created lab. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- parameters - Request parameters that are provided to create lab resource.
- options - LabsClientCreateOrUpdateOptions contains the optional parameters for the LabsClient.CreateOrUpdate method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/CreateLab.json
package main import ( "context" "log" "time" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewLabsClient().CreateOrUpdate(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", armeducation.LabDetails{ Properties: &armeducation.LabProperties{ Description: to.Ptr("example lab description"), BudgetPerStudent: &armeducation.Amount{ Currency: to.Ptr("USD"), Value: to.Ptr[float32](100), }, DisplayName: to.Ptr("example lab"), ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T22:11:29.422Z"); return t }()), }, }, 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.LabDetails = armeducation.LabDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // Status: to.Ptr(armeducation.LabStatusActive), // }, // } }
Output:
func (*LabsClient) Delete ¶
func (client *LabsClient) Delete(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, options *LabsClientDeleteOptions) (LabsClientDeleteResponse, error)
Delete - Delete a specific lab associated with the provided billing account name, billing profile name, and invoice section name. Note all students must be removed from the lab in order to delete the lab. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- options - LabsClientDeleteOptions contains the optional parameters for the LabsClient.Delete method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/DeleteLab.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } _, err = clientFactory.NewLabsClient().Delete(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", nil) if err != nil { log.Fatalf("failed to finish the request: %v", err) } }
Output:
func (*LabsClient) GenerateInviteCode ¶
func (client *LabsClient) GenerateInviteCode(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, parameters InviteCodeGenerateRequest, options *LabsClientGenerateInviteCodeOptions) (LabsClientGenerateInviteCodeResponse, error)
GenerateInviteCode - Generate invite code for a lab If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- parameters - Request parameters that are provided to generate invite code.
- options - LabsClientGenerateInviteCodeOptions contains the optional parameters for the LabsClient.GenerateInviteCode method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GenerateInviteCode.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewLabsClient().GenerateInviteCode(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", armeducation.InviteCodeGenerateRequest{ MaxStudentCount: to.Ptr[float32](10), }, &armeducation.LabsClientGenerateInviteCodeOptions{OnlyUpdateStudentCountParameter: 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.LabDetails = armeducation.LabDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // InvitationCode: to.Ptr("exampleIviteCode"), // MaxStudentCount: to.Ptr[float32](10), // Status: to.Ptr(armeducation.LabStatusActive), // }, // } }
Output:
func (*LabsClient) Get ¶
func (client *LabsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, options *LabsClientGetOptions) (LabsClientGetResponse, error)
Get - Get the details for a specific lab associated with the provided billing account name, billing profile name, and invoice section name. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- options - LabsClientGetOptions contains the optional parameters for the LabsClient.Get method.
Example (Lab) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/Lab.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewLabsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.LabsClientGetOptions{IncludeBudget: to.Ptr(false)}) 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.LabDetails = armeducation.LabDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // InvitationCode: to.Ptr(""), // MaxStudentCount: to.Ptr[float32](0), // Status: to.Ptr(armeducation.LabStatusActive), // }, // } }
Output:
Example (LabIncludeBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/LabIncludeBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewLabsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.LabsClientGetOptions{IncludeBudget: to.Ptr(true)}) 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.LabDetails = armeducation.LabDetails{ // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // InvitationCode: to.Ptr(""), // MaxStudentCount: to.Ptr[float32](0), // Status: to.Ptr(armeducation.LabStatusActive), // TotalAllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // TotalBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // }, // } }
Output:
func (*LabsClient) NewListAllPager ¶
func (client *LabsClient) NewListAllPager(billingAccountName string, billingProfileName string, options *LabsClientListAllOptions) *runtime.Pager[LabsClientListAllResponse]
NewListAllPager - Get a list of labs associated with the provided billing account name and billing profile name.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- options - LabsClientListAllOptions contains the optional parameters for the LabsClient.NewListAllPager method.
Example (LabList) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/LabList.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewLabsClient().NewListAllPager("{billingAccountName}", "{billingProfileName}", &armeducation.LabsClientListAllOptions{IncludeBudget: to.Ptr(false), IncludeDeleted: 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.LabListResult = armeducation.LabListResult{ // Value: []*armeducation.LabDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // Status: to.Ptr(armeducation.LabStatusActive), // }, // }}, // } } }
Output:
Example (LabListIncludeBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/LabListIncludeBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewLabsClient().NewListAllPager("{billingAccountName}", "{billingProfileName}", &armeducation.LabsClientListAllOptions{IncludeBudget: to.Ptr(true), IncludeDeleted: 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.LabListResult = armeducation.LabListResult{ // Value: []*armeducation.LabDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // Status: to.Ptr(armeducation.LabStatusActive), // TotalAllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // TotalBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // }, // }}, // } } }
Output:
func (*LabsClient) NewListPager ¶
func (client *LabsClient) NewListPager(billingAccountName string, billingProfileName string, invoiceSectionName string, options *LabsClientListOptions) *runtime.Pager[LabsClientListResponse]
NewListPager - Get the details for a specific lab associated with the provided billing account name, billing profile name, and invoice section name.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- options - LabsClientListOptions contains the optional parameters for the LabsClient.NewListPager method.
Example (LabListWithInvoiceSectionName) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/LabListWithInvoiceSectionName.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewLabsClient().NewListPager("{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.LabsClientListOptions{IncludeBudget: to.Ptr(true)}) 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.LabListResult = armeducation.LabListResult{ // Value: []*armeducation.LabDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // Status: to.Ptr(armeducation.LabStatusActive), // TotalAllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // TotalBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // }, // }}, // } } }
Output:
Example (LabListWithInvoiceSectionNameIncludeBudget) ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/LabListWithInvoiceSectionNameIncludeBudget.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewLabsClient().NewListPager("{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.LabsClientListOptions{IncludeBudget: to.Ptr(true)}) 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.LabListResult = armeducation.LabListResult{ // Value: []*armeducation.LabDetails{ // { // Name: to.Ptr("default"), // Type: to.Ptr("Microsoft.Education/Labs"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Properties: &armeducation.LabProperties{ // Description: to.Ptr("example lab description"), // BudgetPerStudent: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:25:56.838Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-12-09T21:25:56.838Z"); return t}()), // Status: to.Ptr(armeducation.LabStatusActive), // TotalAllocatedBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // TotalBudget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](500), // }, // }, // }}, // } } }
Output:
type LabsClientCreateOrUpdateOptions ¶
type LabsClientCreateOrUpdateOptions struct { }
LabsClientCreateOrUpdateOptions contains the optional parameters for the LabsClient.CreateOrUpdate method.
type LabsClientCreateOrUpdateResponse ¶
type LabsClientCreateOrUpdateResponse struct { // Lab details. LabDetails }
LabsClientCreateOrUpdateResponse contains the response from method LabsClient.CreateOrUpdate.
type LabsClientDeleteOptions ¶
type LabsClientDeleteOptions struct { }
LabsClientDeleteOptions contains the optional parameters for the LabsClient.Delete method.
type LabsClientDeleteResponse ¶
type LabsClientDeleteResponse struct { }
LabsClientDeleteResponse contains the response from method LabsClient.Delete.
type LabsClientGenerateInviteCodeOptions ¶
type LabsClientGenerateInviteCodeOptions struct { // set this flag to true if you want to update student count without generating a new invite code OnlyUpdateStudentCountParameter *bool }
LabsClientGenerateInviteCodeOptions contains the optional parameters for the LabsClient.GenerateInviteCode method.
type LabsClientGenerateInviteCodeResponse ¶
type LabsClientGenerateInviteCodeResponse struct { // Lab details. LabDetails }
LabsClientGenerateInviteCodeResponse contains the response from method LabsClient.GenerateInviteCode.
type LabsClientGetOptions ¶
type LabsClientGetOptions struct { // May be used to include budget information. IncludeBudget *bool }
LabsClientGetOptions contains the optional parameters for the LabsClient.Get method.
type LabsClientGetResponse ¶
type LabsClientGetResponse struct { // Lab details. LabDetails }
LabsClientGetResponse contains the response from method LabsClient.Get.
type LabsClientListAllOptions ¶
type LabsClientListAllOptions struct { // May be used to include budget information. IncludeBudget *bool // May be used to show deleted items. IncludeDeleted *bool }
LabsClientListAllOptions contains the optional parameters for the LabsClient.NewListAllPager method.
type LabsClientListAllResponse ¶
type LabsClientListAllResponse struct { // List of labs. LabListResult }
LabsClientListAllResponse contains the response from method LabsClient.NewListAllPager.
type LabsClientListOptions ¶
type LabsClientListOptions struct { // May be used to include budget information. IncludeBudget *bool }
LabsClientListOptions contains the optional parameters for the LabsClient.NewListPager method.
type LabsClientListResponse ¶
type LabsClientListResponse struct { // List of labs. LabListResult }
LabsClientListResponse contains the response from method LabsClient.NewListPager.
type ManagementClient ¶
type ManagementClient struct {
// contains filtered or unexported fields
}
ManagementClient contains the methods for the EducationManagementClient group. Don't use this type directly, use NewManagementClient() instead.
func NewManagementClient ¶
func NewManagementClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*ManagementClient, error)
NewManagementClient creates a new instance of ManagementClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*ManagementClient) RedeemInvitationCode ¶
func (client *ManagementClient) RedeemInvitationCode(ctx context.Context, parameters RedeemRequest, options *ManagementClientRedeemInvitationCodeOptions) (ManagementClientRedeemInvitationCodeResponse, error)
RedeemInvitationCode - Redeem invite code to join a redeemable lab If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- parameters - Request parameters to provide redeem code.
- options - ManagementClientRedeemInvitationCodeOptions contains the optional parameters for the ManagementClient.RedeemInvitationCode method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/RedeemCode.json
package main import ( "context" "log" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } _, err = clientFactory.NewManagementClient().RedeemInvitationCode(ctx, armeducation.RedeemRequest{ FirstName: to.Ptr("test"), LastName: to.Ptr("user"), RedeemCode: to.Ptr("exampleRedeemCode"), }, nil) if err != nil { log.Fatalf("failed to finish the request: %v", err) } }
Output:
type ManagementClientRedeemInvitationCodeOptions ¶
type ManagementClientRedeemInvitationCodeOptions struct { }
ManagementClientRedeemInvitationCodeOptions contains the optional parameters for the ManagementClient.RedeemInvitationCode method.
type ManagementClientRedeemInvitationCodeResponse ¶
type ManagementClientRedeemInvitationCodeResponse struct { }
ManagementClientRedeemInvitationCodeResponse contains the response from method ManagementClient.RedeemInvitationCode.
type Operation ¶
type Operation struct { // Localized display information for this particular operation. Display *OperationDisplay // READ-ONLY; 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 ARM/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 - Details of a REST API operation, returned from the Resource Provider Operations API
func (Operation) MarshalJSON ¶ added in v0.2.0
MarshalJSON implements the json.Marshaller interface for type Operation.
func (*Operation) UnmarshalJSON ¶ added in v0.2.0
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 this particular operation.
func (OperationDisplay) MarshalJSON ¶ added in v0.2.0
func (o OperationDisplay) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type OperationDisplay.
func (*OperationDisplay) UnmarshalJSON ¶ added in v0.2.0
func (o *OperationDisplay) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay.
type OperationListResult ¶
type OperationListResult struct { // READ-ONLY; URL to get the next set of operation list results (if there are any). NextLink *string // READ-ONLY; List of operations supported by the resource provider Value []*Operation }
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 ¶ added in v0.2.0
func (o OperationListResult) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type OperationListResult.
func (*OperationListResult) UnmarshalJSON ¶ added in v0.2.0
func (o *OperationListResult) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult.
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.
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 - pass nil to accept the default values.
func (*OperationsClient) List ¶
func (client *OperationsClient) List(ctx context.Context, options *OperationsClientListOptions) (OperationsClientListResponse, error)
List - Lists all of the available Microsoft.Education API operations. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- options - OperationsClientListOptions contains the optional parameters for the OperationsClient.List method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/GetOperations.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewOperationsClient().List(ctx, 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.OperationListResult = armeducation.OperationListResult{ // Value: []*armeducation.Operation{ // { // Name: to.Ptr("Microsoft.Education/grants/read"), // Display: &armeducation.OperationDisplay{ // Description: to.Ptr("Read all grants"), // Operation: to.Ptr("Get grants"), // Provider: to.Ptr("Microsoft Education"), // Resource: to.Ptr("Grants"), // }, // }, // { // Name: to.Ptr("Microsoft.Education/labs/read"), // Display: &armeducation.OperationDisplay{ // Description: to.Ptr("Read all labs"), // Operation: to.Ptr("Get labs"), // Provider: to.Ptr("Microsoft Edcucation"), // Resource: to.Ptr("Labs"), // }, // }, // { // Name: to.Ptr("Microsoft.Education/labs/write"), // Display: &armeducation.OperationDisplay{ // Description: to.Ptr("Create or update lab"), // Operation: to.Ptr("Create or update lab"), // Provider: to.Ptr("Microsoft Edcucation"), // Resource: to.Ptr("Labs"), // }, // }, // { // Name: to.Ptr("Microsoft.Education/labs/delete"), // Display: &armeducation.OperationDisplay{ // Description: to.Ptr("Delete a lab"), // Operation: to.Ptr("Delete lab"), // Provider: to.Ptr("Microsoft Edcucation"), // Resource: to.Ptr("Labs"), // }, // }}, // } }
Output:
type OperationsClientListOptions ¶
type OperationsClientListOptions struct { }
OperationsClientListOptions contains the optional parameters for the OperationsClient.List 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.List.
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"
func PossibleOriginValues ¶
func PossibleOriginValues() []Origin
PossibleOriginValues returns the possible values for the Origin const type.
type RedeemRequest ¶
type RedeemRequest struct { // REQUIRED; first name of requester FirstName *string // REQUIRED; last name of requester LastName *string // REQUIRED; redeem code RedeemCode *string }
RedeemRequest - redeem request.
func (RedeemRequest) MarshalJSON ¶ added in v0.2.0
func (r RedeemRequest) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type RedeemRequest.
func (*RedeemRequest) UnmarshalJSON ¶ added in v0.2.0
func (r *RedeemRequest) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type RedeemRequest.
type Resource ¶
type Resource struct { // 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 }
Resource - Common fields that are returned in the response for all Azure Resource Manager resources
func (Resource) MarshalJSON ¶ added in v0.2.0
MarshalJSON implements the json.Marshaller interface for type Resource.
func (*Resource) UnmarshalJSON ¶ added in v0.2.0
UnmarshalJSON implements the json.Unmarshaller interface for type Resource.
type StudentDetails ¶
type StudentDetails struct { // Get student response properties. Properties *StudentProperties // 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 }
StudentDetails - Student details.
func (StudentDetails) MarshalJSON ¶ added in v0.2.0
func (s StudentDetails) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentDetails.
func (*StudentDetails) UnmarshalJSON ¶ added in v0.2.0
func (s *StudentDetails) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentDetails.
type StudentLabDetails ¶
type StudentLabDetails struct { // Student lab properties. Properties *StudentLabProperties // 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 }
StudentLabDetails - Student lab details.
func (StudentLabDetails) MarshalJSON ¶ added in v0.2.0
func (s StudentLabDetails) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentLabDetails.
func (*StudentLabDetails) UnmarshalJSON ¶ added in v0.2.0
func (s *StudentLabDetails) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentLabDetails.
type StudentLabListResult ¶
type StudentLabListResult struct { // READ-ONLY; The link (url) to the next page of results. NextLink *string // READ-ONLY; The list of labs. Value []*StudentLabDetails }
StudentLabListResult - List of labs.
func (StudentLabListResult) MarshalJSON ¶ added in v0.2.0
func (s StudentLabListResult) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentLabListResult.
func (*StudentLabListResult) UnmarshalJSON ¶ added in v0.2.0
func (s *StudentLabListResult) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentLabListResult.
type StudentLabProperties ¶
type StudentLabProperties struct { // READ-ONLY; Student Budget Budget *Amount // READ-ONLY; Detail description of this lab Description *string // READ-ONLY; Student lab Display Name DisplayName *string // READ-ONLY; User Added Date EffectiveDate *time.Time // READ-ONLY; Date the lab will expire and by default will be the expiration date for each student in this lab ExpirationDate *time.Time // READ-ONLY; Lab Scope. /providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default LabScope *string // READ-ONLY; Student Role Role *StudentRole // READ-ONLY; Student Lab Status Status *StudentLabStatus // READ-ONLY; Subscription Id SubscriptionID *string }
StudentLabProperties - Student lab detail properties
func (StudentLabProperties) MarshalJSON ¶
func (s StudentLabProperties) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentLabProperties.
func (*StudentLabProperties) UnmarshalJSON ¶
func (s *StudentLabProperties) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentLabProperties.
type StudentLabStatus ¶
type StudentLabStatus string
StudentLabStatus - Student Lab Status
const ( StudentLabStatusActive StudentLabStatus = "Active" StudentLabStatusDeleted StudentLabStatus = "Deleted" StudentLabStatusDisabled StudentLabStatus = "Disabled" StudentLabStatusExpired StudentLabStatus = "Expired" StudentLabStatusPending StudentLabStatus = "Pending" )
func PossibleStudentLabStatusValues ¶
func PossibleStudentLabStatusValues() []StudentLabStatus
PossibleStudentLabStatusValues returns the possible values for the StudentLabStatus const type.
type StudentLabsClient ¶
type StudentLabsClient struct {
// contains filtered or unexported fields
}
StudentLabsClient contains the methods for the StudentLabs group. Don't use this type directly, use NewStudentLabsClient() instead.
func NewStudentLabsClient ¶
func NewStudentLabsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*StudentLabsClient, error)
NewStudentLabsClient creates a new instance of StudentLabsClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*StudentLabsClient) Get ¶
func (client *StudentLabsClient) Get(ctx context.Context, studentLabName string, options *StudentLabsClientGetOptions) (StudentLabsClientGetResponse, error)
Get - Get the details for a specified lab associated with the student lab. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- studentLabName - Student lab name.
- options - StudentLabsClientGetOptions contains the optional parameters for the StudentLabsClient.Get method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/StudentLab.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewStudentLabsClient().Get(ctx, "{studentLabName}", 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.StudentLabDetails = armeducation.StudentLabDetails{ // Name: to.Ptr("{studentLabName}"), // Type: to.Ptr("Microsoft.Education/StudentLabs"), // ID: to.Ptr(" /providers/Microsoft.Education/studentLabs/{studentLabName}"), // Properties: &armeducation.StudentLabProperties{ // Description: to.Ptr("example lab description"), // Budget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab name"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:54:17.438Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-09T21:54:17.438Z"); return t}()), // LabScope: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Role: to.Ptr(armeducation.StudentRoleStudent), // Status: to.Ptr(armeducation.StudentLabStatusActive), // SubscriptionID: to.Ptr("000000000-0000-0000-0000-00000000000000"), // }, // } }
Output:
func (*StudentLabsClient) NewListAllPager ¶
func (client *StudentLabsClient) NewListAllPager(options *StudentLabsClientListAllOptions) *runtime.Pager[StudentLabsClientListAllResponse]
NewListAllPager - Get a list of all labs associated with the caller of the API.
Generated from API version 2021-12-01-preview
- options - StudentLabsClientListAllOptions contains the optional parameters for the StudentLabsClient.NewListAllPager method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/StudentLabList.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewStudentLabsClient().NewListAllPager(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.StudentLabListResult = armeducation.StudentLabListResult{ // Value: []*armeducation.StudentLabDetails{ // { // Name: to.Ptr("{studentLabName}"), // Type: to.Ptr("Microsoft.Education/StudentLabs"), // ID: to.Ptr(" /providers/Microsoft.Education/studentLabs/{studentLabName}"), // Properties: &armeducation.StudentLabProperties{ // Description: to.Ptr("example lab description"), // Budget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // DisplayName: to.Ptr("example lab name"), // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:54:17.438Z"); return t}()), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-09T21:54:17.438Z"); return t}()), // LabScope: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default"), // Role: to.Ptr(armeducation.StudentRoleStudent), // Status: to.Ptr(armeducation.StudentLabStatusActive), // SubscriptionID: to.Ptr("000000000-0000-0000-0000-00000000000000"), // }, // }}, // } } }
Output:
type StudentLabsClientGetOptions ¶
type StudentLabsClientGetOptions struct { }
StudentLabsClientGetOptions contains the optional parameters for the StudentLabsClient.Get method.
type StudentLabsClientGetResponse ¶
type StudentLabsClientGetResponse struct { // Student lab details. StudentLabDetails }
StudentLabsClientGetResponse contains the response from method StudentLabsClient.Get.
type StudentLabsClientListAllOptions ¶
type StudentLabsClientListAllOptions struct { }
StudentLabsClientListAllOptions contains the optional parameters for the StudentLabsClient.NewListAllPager method.
type StudentLabsClientListAllResponse ¶
type StudentLabsClientListAllResponse struct { // List of labs. StudentLabListResult }
StudentLabsClientListAllResponse contains the response from method StudentLabsClient.NewListAllPager.
type StudentListResult ¶
type StudentListResult struct { // READ-ONLY; The link (url) to the next page of results. NextLink *string // READ-ONLY; The list of students. Value []*StudentDetails }
StudentListResult - List of students.
func (StudentListResult) MarshalJSON ¶ added in v0.2.0
func (s StudentListResult) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentListResult.
func (*StudentListResult) UnmarshalJSON ¶ added in v0.2.0
func (s *StudentListResult) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentListResult.
type StudentProperties ¶
type StudentProperties struct { // REQUIRED; Student Budget Budget *Amount // REQUIRED; Student Email Email *string // REQUIRED; Date this student is set to expire from the lab. ExpirationDate *time.Time // REQUIRED; First Name FirstName *string // REQUIRED; Last Name LastName *string // REQUIRED; Student Role Role *StudentRole // Subscription alias SubscriptionAlias *string // subscription invite last sent date SubscriptionInviteLastSentDate *time.Time // READ-ONLY; Date student was added to the lab EffectiveDate *time.Time // READ-ONLY; Student Lab Status Status *StudentLabStatus // READ-ONLY; Subscription Id SubscriptionID *string }
StudentProperties - Student detail properties
func (StudentProperties) MarshalJSON ¶
func (s StudentProperties) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface for type StudentProperties.
func (*StudentProperties) UnmarshalJSON ¶
func (s *StudentProperties) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaller interface for type StudentProperties.
type StudentRole ¶
type StudentRole string
StudentRole - Student Role
const ( StudentRoleAdmin StudentRole = "Admin" StudentRoleStudent StudentRole = "Student" )
func PossibleStudentRoleValues ¶
func PossibleStudentRoleValues() []StudentRole
PossibleStudentRoleValues returns the possible values for the StudentRole const type.
type StudentsClient ¶
type StudentsClient struct {
// contains filtered or unexported fields
}
StudentsClient contains the methods for the Students group. Don't use this type directly, use NewStudentsClient() instead.
func NewStudentsClient ¶
func NewStudentsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*StudentsClient, error)
NewStudentsClient creates a new instance of StudentsClient with the specified values.
- credential - used to authorize requests. Usually a credential from azidentity.
- options - pass nil to accept the default values.
func (*StudentsClient) CreateOrUpdate ¶
func (client *StudentsClient) CreateOrUpdate(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, studentAlias string, parameters StudentDetails, options *StudentsClientCreateOrUpdateOptions) (StudentsClientCreateOrUpdateResponse, error)
CreateOrUpdate - Create and add a new student to the specified lab or update the details of an existing student in a lab. Note the student must have a valid tenant to accept the lab after they have been added to lab. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- studentAlias - Student alias.
- parameters - Request parameters that are provided to update student properties.
- options - StudentsClientCreateOrUpdateOptions contains the optional parameters for the StudentsClient.CreateOrUpdate method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/CreateStudent.json
package main import ( "context" "log" "time" "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/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewStudentsClient().CreateOrUpdate(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", "{studentAlias}", armeducation.StudentDetails{ Properties: &armeducation.StudentProperties{ Budget: &armeducation.Amount{ Currency: to.Ptr("USD"), Value: to.Ptr[float32](100), }, Email: to.Ptr("test@contoso.com"), ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T22:13:21.795Z"); return t }()), FirstName: to.Ptr("test"), LastName: to.Ptr("user"), Role: to.Ptr(armeducation.StudentRoleStudent), }, }, 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.StudentDetails = armeducation.StudentDetails{ // Name: to.Ptr("{studentAlias}"), // Type: to.Ptr("Microsoft.Education/Students"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default/students/{studentAlias}"), // Properties: &armeducation.StudentProperties{ // Budget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:43:54.161Z"); return t}()), // Email: to.Ptr("test@contoso.com"), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-09T21:43:54.161Z"); return t}()), // FirstName: to.Ptr("test"), // LastName: to.Ptr("user"), // Role: to.Ptr(armeducation.StudentRoleStudent), // Status: to.Ptr(armeducation.StudentLabStatusActive), // SubscriptionID: to.Ptr("000000000-0000-0000-0000-00000000000000"), // }, // } }
Output:
func (*StudentsClient) Delete ¶
func (client *StudentsClient) Delete(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, studentAlias string, options *StudentsClientDeleteOptions) (StudentsClientDeleteResponse, error)
Delete - Delete the specified student based on the student alias. If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- studentAlias - Student alias.
- options - StudentsClientDeleteOptions contains the optional parameters for the StudentsClient.Delete method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/DeleteStudent.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } _, err = clientFactory.NewStudentsClient().Delete(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", "{studentAlias}", nil) if err != nil { log.Fatalf("failed to finish the request: %v", err) } }
Output:
func (*StudentsClient) Get ¶
func (client *StudentsClient) Get(ctx context.Context, billingAccountName string, billingProfileName string, invoiceSectionName string, studentAlias string, options *StudentsClientGetOptions) (StudentsClientGetResponse, error)
Get - Get the details for a specific student in the specified lab by student alias If the operation fails it returns an *azcore.ResponseError type.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- studentAlias - Student alias.
- options - StudentsClientGetOptions contains the optional parameters for the StudentsClient.Get method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/Student.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } res, err := clientFactory.NewStudentsClient().Get(ctx, "{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", "{studentAlias}", 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.StudentDetails = armeducation.StudentDetails{ // Name: to.Ptr("{studentAlias}"), // Type: to.Ptr("Microsoft.Education/Students"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default/students/{studentAlias}"), // Properties: &armeducation.StudentProperties{ // Budget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:43:54.161Z"); return t}()), // Email: to.Ptr("test@contoso.com"), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-09T21:43:54.161Z"); return t}()), // FirstName: to.Ptr("test"), // LastName: to.Ptr("user"), // Role: to.Ptr(armeducation.StudentRoleStudent), // Status: to.Ptr(armeducation.StudentLabStatusActive), // SubscriptionAlias: to.Ptr("000000000-0000-0000-0000-00000000000000"), // SubscriptionID: to.Ptr("000000000-0000-0000-0000-00000000000000"), // SubscriptionInviteLastSentDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:43:54.161Z"); return t}()), // }, // } }
Output:
func (*StudentsClient) NewListPager ¶
func (client *StudentsClient) NewListPager(billingAccountName string, billingProfileName string, invoiceSectionName string, options *StudentsClientListOptions) *runtime.Pager[StudentsClientListResponse]
NewListPager - Get a list of details about students that are associated with the specified lab.
Generated from API version 2021-12-01-preview
- billingAccountName - Billing account name.
- billingProfileName - Billing profile name.
- invoiceSectionName - Invoice section name.
- options - StudentsClientListOptions contains the optional parameters for the StudentsClient.NewListPager method.
Example ¶
Generated from example definition: https://github.com/Azure/azure-rest-api-specs/blob/b9b91929c304f8fb44002267b6c98d9fb9dde014/specification/education/resource-manager/Microsoft.Education/preview/2021-12-01-preview/examples/StudentList.json
package main import ( "context" "log" "github.com/Azure/azure-sdk-for-go/sdk/azidentity" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/education/armeducation" ) func main() { cred, err := azidentity.NewDefaultAzureCredential(nil) if err != nil { log.Fatalf("failed to obtain a credential: %v", err) } ctx := context.Background() clientFactory, err := armeducation.NewClientFactory(cred, nil) if err != nil { log.Fatalf("failed to create client: %v", err) } pager := clientFactory.NewStudentsClient().NewListPager("{billingAccountName}", "{billingProfileName}", "{invoiceSectionName}", &armeducation.StudentsClientListOptions{IncludeDeleted: 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.StudentListResult = armeducation.StudentListResult{ // Value: []*armeducation.StudentDetails{ // { // Name: to.Ptr("{studentAlias}"), // Type: to.Ptr("Microsoft.Education/Students"), // ID: to.Ptr("/providers/Microsoft.Billing/billingAccounts/{billingAccountName}/billingProfiles/{billingProfileName}/invoiceSections/{invoiceSectionName}/providers/Microsoft.Education/labs/default/students/{studentAlias}"), // Properties: &armeducation.StudentProperties{ // Budget: &armeducation.Amount{ // Currency: to.Ptr("USD"), // Value: to.Ptr[float32](100), // }, // EffectiveDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:43:54.161Z"); return t}()), // Email: to.Ptr("test@contoso.com"), // ExpirationDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2022-11-09T21:43:54.161Z"); return t}()), // FirstName: to.Ptr("test"), // LastName: to.Ptr("user"), // Role: to.Ptr(armeducation.StudentRoleStudent), // Status: to.Ptr(armeducation.StudentLabStatusActive), // SubscriptionAlias: to.Ptr("000000000-0000-0000-0000-00000000000000"), // SubscriptionID: to.Ptr("000000000-0000-0000-0000-00000000000000"), // SubscriptionInviteLastSentDate: to.Ptr(func() time.Time { t, _ := time.Parse(time.RFC3339Nano, "2021-11-09T21:43:54.161Z"); return t}()), // }, // }}, // } } }
Output:
type StudentsClientCreateOrUpdateOptions ¶
type StudentsClientCreateOrUpdateOptions struct { }
StudentsClientCreateOrUpdateOptions contains the optional parameters for the StudentsClient.CreateOrUpdate method.
type StudentsClientCreateOrUpdateResponse ¶
type StudentsClientCreateOrUpdateResponse struct { // Student details. StudentDetails }
StudentsClientCreateOrUpdateResponse contains the response from method StudentsClient.CreateOrUpdate.
type StudentsClientDeleteOptions ¶
type StudentsClientDeleteOptions struct { }
StudentsClientDeleteOptions contains the optional parameters for the StudentsClient.Delete method.
type StudentsClientDeleteResponse ¶
type StudentsClientDeleteResponse struct { }
StudentsClientDeleteResponse contains the response from method StudentsClient.Delete.
type StudentsClientGetOptions ¶
type StudentsClientGetOptions struct { }
StudentsClientGetOptions contains the optional parameters for the StudentsClient.Get method.
type StudentsClientGetResponse ¶
type StudentsClientGetResponse struct { // Student details. StudentDetails }
StudentsClientGetResponse contains the response from method StudentsClient.Get.
type StudentsClientListOptions ¶
type StudentsClientListOptions struct { // May be used to show deleted items. IncludeDeleted *bool }
StudentsClientListOptions contains the optional parameters for the StudentsClient.NewListPager method.
type StudentsClientListResponse ¶
type StudentsClientListResponse struct { // List of students. StudentListResult }
StudentsClientListResponse contains the response from method StudentsClient.NewListPager.
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.