azure-native.apimanagement.GlobalSchema
Explore with Pulumi AI
Global Schema Contract details. Azure REST API version: 2022-08-01.
Other available API versions: 2022-09-01-preview, 2023-03-01-preview, 2023-05-01-preview, 2023-09-01-preview, 2024-05-01, 2024-06-01-preview.
Example Usage
ApiManagementCreateSchema1
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var globalSchema = new AzureNative.ApiManagement.GlobalSchema("globalSchema", new()
    {
        Description = "sample schema description",
        ResourceGroupName = "rg1",
        SchemaId = "schema1",
        SchemaType = AzureNative.ApiManagement.SchemaType.Xml,
        ServiceName = "apimService1",
        Value = @"<xsd:schema xmlns:xsd=""http://www.w3.org/2001/XMLSchema""
           xmlns:tns=""http://tempuri.org/PurchaseOrderSchema.xsd""
           targetNamespace=""http://tempuri.org/PurchaseOrderSchema.xsd""
           elementFormDefault=""qualified"">
 <xsd:element name=""PurchaseOrder"" type=""tns:PurchaseOrderType""/>
 <xsd:complexType name=""PurchaseOrderType"">
  <xsd:sequence>
   <xsd:element name=""ShipTo"" type=""tns:USAddress"" maxOccurs=""2""/>
   <xsd:element name=""BillTo"" type=""tns:USAddress""/>
  </xsd:sequence>
  <xsd:attribute name=""OrderDate"" type=""xsd:date""/>
 </xsd:complexType>
 <xsd:complexType name=""USAddress"">
  <xsd:sequence>
   <xsd:element name=""name""   type=""xsd:string""/>
   <xsd:element name=""street"" type=""xsd:string""/>
   <xsd:element name=""city""   type=""xsd:string""/>
   <xsd:element name=""state""  type=""xsd:string""/>
   <xsd:element name=""zip""    type=""xsd:integer""/>
  </xsd:sequence>
  <xsd:attribute name=""country"" type=""xsd:NMTOKEN"" fixed=""US""/>
 </xsd:complexType>
</xsd:schema>",
    });
});
package main
import (
	apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apimanagement.NewGlobalSchema(ctx, "globalSchema", &apimanagement.GlobalSchemaArgs{
			Description:       pulumi.String("sample schema description"),
			ResourceGroupName: pulumi.String("rg1"),
			SchemaId:          pulumi.String("schema1"),
			SchemaType:        pulumi.String(apimanagement.SchemaTypeXml),
			ServiceName:       pulumi.String("apimService1"),
			Value: pulumi.Any(`<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
           xmlns:tns="http://tempuri.org/PurchaseOrderSchema.xsd"
           targetNamespace="http://tempuri.org/PurchaseOrderSchema.xsd"
           elementFormDefault="qualified">
 <xsd:element name="PurchaseOrder" type="tns:PurchaseOrderType"/>
 <xsd:complexType name="PurchaseOrderType">
  <xsd:sequence>
   <xsd:element name="ShipTo" type="tns:USAddress" maxOccurs="2"/>
   <xsd:element name="BillTo" type="tns:USAddress"/>
  </xsd:sequence>
  <xsd:attribute name="OrderDate" type="xsd:date"/>
 </xsd:complexType>
 <xsd:complexType name="USAddress">
  <xsd:sequence>
   <xsd:element name="name"   type="xsd:string"/>
   <xsd:element name="street" type="xsd:string"/>
   <xsd:element name="city"   type="xsd:string"/>
   <xsd:element name="state"  type="xsd:string"/>
   <xsd:element name="zip"    type="xsd:integer"/>
  </xsd:sequence>
  <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>
 </xsd:complexType>
</xsd:schema>`),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.GlobalSchema;
import com.pulumi.azurenative.apimanagement.GlobalSchemaArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var globalSchema = new GlobalSchema("globalSchema", GlobalSchemaArgs.builder()
            .description("sample schema description")
            .resourceGroupName("rg1")
            .schemaId("schema1")
            .schemaType("xml")
            .serviceName("apimService1")
            .value("""
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
           xmlns:tns="http://tempuri.org/PurchaseOrderSchema.xsd"
           targetNamespace="http://tempuri.org/PurchaseOrderSchema.xsd"
           elementFormDefault="qualified">
 <xsd:element name="PurchaseOrder" type="tns:PurchaseOrderType"/>
 <xsd:complexType name="PurchaseOrderType">
  <xsd:sequence>
   <xsd:element name="ShipTo" type="tns:USAddress" maxOccurs="2"/>
   <xsd:element name="BillTo" type="tns:USAddress"/>
  </xsd:sequence>
  <xsd:attribute name="OrderDate" type="xsd:date"/>
 </xsd:complexType>
 <xsd:complexType name="USAddress">
  <xsd:sequence>
   <xsd:element name="name"   type="xsd:string"/>
   <xsd:element name="street" type="xsd:string"/>
   <xsd:element name="city"   type="xsd:string"/>
   <xsd:element name="state"  type="xsd:string"/>
   <xsd:element name="zip"    type="xsd:integer"/>
  </xsd:sequence>
  <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>
 </xsd:complexType>
</xsd:schema>            """)
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const globalSchema = new azure_native.apimanagement.GlobalSchema("globalSchema", {
    description: "sample schema description",
    resourceGroupName: "rg1",
    schemaId: "schema1",
    schemaType: azure_native.apimanagement.SchemaType.Xml,
    serviceName: "apimService1",
    value: `<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"\x0d
           xmlns:tns="http://tempuri.org/PurchaseOrderSchema.xsd"\x0d
           targetNamespace="http://tempuri.org/PurchaseOrderSchema.xsd"\x0d
           elementFormDefault="qualified">\x0d
 <xsd:element name="PurchaseOrder" type="tns:PurchaseOrderType"/>\x0d
 <xsd:complexType name="PurchaseOrderType">\x0d
  <xsd:sequence>\x0d
   <xsd:element name="ShipTo" type="tns:USAddress" maxOccurs="2"/>\x0d
   <xsd:element name="BillTo" type="tns:USAddress"/>\x0d
  </xsd:sequence>\x0d
  <xsd:attribute name="OrderDate" type="xsd:date"/>\x0d
 </xsd:complexType>\x0d
\x0d
 <xsd:complexType name="USAddress">\x0d
  <xsd:sequence>\x0d
   <xsd:element name="name"   type="xsd:string"/>\x0d
   <xsd:element name="street" type="xsd:string"/>\x0d
   <xsd:element name="city"   type="xsd:string"/>\x0d
   <xsd:element name="state"  type="xsd:string"/>\x0d
   <xsd:element name="zip"    type="xsd:integer"/>\x0d
  </xsd:sequence>\x0d
  <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>\x0d
 </xsd:complexType>\x0d
</xsd:schema>`,
});
import pulumi
import pulumi_azure_native as azure_native
global_schema = azure_native.apimanagement.GlobalSchema("globalSchema",
    description="sample schema description",
    resource_group_name="rg1",
    schema_id="schema1",
    schema_type=azure_native.apimanagement.SchemaType.XML,
    service_name="apimService1",
    value="""<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"\x0d
           xmlns:tns="http://tempuri.org/PurchaseOrderSchema.xsd"\x0d
           targetNamespace="http://tempuri.org/PurchaseOrderSchema.xsd"\x0d
           elementFormDefault="qualified">\x0d
 <xsd:element name="PurchaseOrder" type="tns:PurchaseOrderType"/>\x0d
 <xsd:complexType name="PurchaseOrderType">\x0d
  <xsd:sequence>\x0d
   <xsd:element name="ShipTo" type="tns:USAddress" maxOccurs="2"/>\x0d
   <xsd:element name="BillTo" type="tns:USAddress"/>\x0d
  </xsd:sequence>\x0d
  <xsd:attribute name="OrderDate" type="xsd:date"/>\x0d
 </xsd:complexType>\x0d
\x0d
 <xsd:complexType name="USAddress">\x0d
  <xsd:sequence>\x0d
   <xsd:element name="name"   type="xsd:string"/>\x0d
   <xsd:element name="street" type="xsd:string"/>\x0d
   <xsd:element name="city"   type="xsd:string"/>\x0d
   <xsd:element name="state"  type="xsd:string"/>\x0d
   <xsd:element name="zip"    type="xsd:integer"/>\x0d
  </xsd:sequence>\x0d
  <xsd:attribute name="country" type="xsd:NMTOKEN" fixed="US"/>\x0d
 </xsd:complexType>\x0d
</xsd:schema>""")
resources:
  globalSchema:
    type: azure-native:apimanagement:GlobalSchema
    properties:
      description: sample schema description
      resourceGroupName: rg1
      schemaId: schema1
      schemaType: xml
      serviceName: apimService1
      value: "<xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"\r\n           xmlns:tns=\"http://tempuri.org/PurchaseOrderSchema.xsd\"\r\n           targetNamespace=\"http://tempuri.org/PurchaseOrderSchema.xsd\"\r\n           elementFormDefault=\"qualified\">\r\n <xsd:element name=\"PurchaseOrder\" type=\"tns:PurchaseOrderType\"/>\r\n <xsd:complexType name=\"PurchaseOrderType\">\r\n  <xsd:sequence>\r\n   <xsd:element name=\"ShipTo\" type=\"tns:USAddress\" maxOccurs=\"2\"/>\r\n   <xsd:element name=\"BillTo\" type=\"tns:USAddress\"/>\r\n  </xsd:sequence>\r\n  <xsd:attribute name=\"OrderDate\" type=\"xsd:date\"/>\r\n </xsd:complexType>\r\n\r\n <xsd:complexType name=\"USAddress\">\r\n  <xsd:sequence>\r\n   <xsd:element name=\"name\"   type=\"xsd:string\"/>\r\n   <xsd:element name=\"street\" type=\"xsd:string\"/>\r\n   <xsd:element name=\"city\"   type=\"xsd:string\"/>\r\n   <xsd:element name=\"state\"  type=\"xsd:string\"/>\r\n   <xsd:element name=\"zip\"    type=\"xsd:integer\"/>\r\n  </xsd:sequence>\r\n  <xsd:attribute name=\"country\" type=\"xsd:NMTOKEN\" fixed=\"US\"/>\r\n </xsd:complexType>\r\n</xsd:schema>"
ApiManagementCreateSchema2
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() => 
{
    var globalSchema = new AzureNative.ApiManagement.GlobalSchema("globalSchema", new()
    {
        Description = "sample schema description",
        ResourceGroupName = "rg1",
        SchemaId = "schema1",
        SchemaType = AzureNative.ApiManagement.SchemaType.Json,
        ServiceName = "apimService1",
    });
});
package main
import (
	apimanagement "github.com/pulumi/pulumi-azure-native-sdk/apimanagement/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := apimanagement.NewGlobalSchema(ctx, "globalSchema", &apimanagement.GlobalSchemaArgs{
			Description:       pulumi.String("sample schema description"),
			ResourceGroupName: pulumi.String("rg1"),
			SchemaId:          pulumi.String("schema1"),
			SchemaType:        pulumi.String(apimanagement.SchemaTypeJson),
			ServiceName:       pulumi.String("apimService1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.apimanagement.GlobalSchema;
import com.pulumi.azurenative.apimanagement.GlobalSchemaArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var globalSchema = new GlobalSchema("globalSchema", GlobalSchemaArgs.builder()
            .description("sample schema description")
            .resourceGroupName("rg1")
            .schemaId("schema1")
            .schemaType("json")
            .serviceName("apimService1")
            .build());
    }
}
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";
const globalSchema = new azure_native.apimanagement.GlobalSchema("globalSchema", {
    description: "sample schema description",
    resourceGroupName: "rg1",
    schemaId: "schema1",
    schemaType: azure_native.apimanagement.SchemaType.Json,
    serviceName: "apimService1",
});
import pulumi
import pulumi_azure_native as azure_native
global_schema = azure_native.apimanagement.GlobalSchema("globalSchema",
    description="sample schema description",
    resource_group_name="rg1",
    schema_id="schema1",
    schema_type=azure_native.apimanagement.SchemaType.JSON,
    service_name="apimService1")
resources:
  globalSchema:
    type: azure-native:apimanagement:GlobalSchema
    properties:
      description: sample schema description
      resourceGroupName: rg1
      schemaId: schema1
      schemaType: json
      serviceName: apimService1
Create GlobalSchema Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new GlobalSchema(name: string, args: GlobalSchemaArgs, opts?: CustomResourceOptions);@overload
def GlobalSchema(resource_name: str,
                 args: GlobalSchemaArgs,
                 opts: Optional[ResourceOptions] = None)
@overload
def GlobalSchema(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 resource_group_name: Optional[str] = None,
                 schema_type: Optional[Union[str, SchemaType]] = None,
                 service_name: Optional[str] = None,
                 description: Optional[str] = None,
                 schema_id: Optional[str] = None,
                 value: Optional[Any] = None)func NewGlobalSchema(ctx *Context, name string, args GlobalSchemaArgs, opts ...ResourceOption) (*GlobalSchema, error)public GlobalSchema(string name, GlobalSchemaArgs args, CustomResourceOptions? opts = null)
public GlobalSchema(String name, GlobalSchemaArgs args)
public GlobalSchema(String name, GlobalSchemaArgs args, CustomResourceOptions options)
type: azure-native:apimanagement:GlobalSchema
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args GlobalSchemaArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args GlobalSchemaArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args GlobalSchemaArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args GlobalSchemaArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args GlobalSchemaArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var globalSchemaResource = new AzureNative.ApiManagement.GlobalSchema("globalSchemaResource", new()
{
    ResourceGroupName = "string",
    SchemaType = "string",
    ServiceName = "string",
    Description = "string",
    SchemaId = "string",
    Value = "any",
});
example, err := apimanagement.NewGlobalSchema(ctx, "globalSchemaResource", &apimanagement.GlobalSchemaArgs{
	ResourceGroupName: pulumi.String("string"),
	SchemaType:        pulumi.String("string"),
	ServiceName:       pulumi.String("string"),
	Description:       pulumi.String("string"),
	SchemaId:          pulumi.String("string"),
	Value:             pulumi.Any("any"),
})
var globalSchemaResource = new GlobalSchema("globalSchemaResource", GlobalSchemaArgs.builder()
    .resourceGroupName("string")
    .schemaType("string")
    .serviceName("string")
    .description("string")
    .schemaId("string")
    .value("any")
    .build());
global_schema_resource = azure_native.apimanagement.GlobalSchema("globalSchemaResource",
    resource_group_name="string",
    schema_type="string",
    service_name="string",
    description="string",
    schema_id="string",
    value="any")
const globalSchemaResource = new azure_native.apimanagement.GlobalSchema("globalSchemaResource", {
    resourceGroupName: "string",
    schemaType: "string",
    serviceName: "string",
    description: "string",
    schemaId: "string",
    value: "any",
});
type: azure-native:apimanagement:GlobalSchema
properties:
    description: string
    resourceGroupName: string
    schemaId: string
    schemaType: string
    serviceName: string
    value: any
GlobalSchema Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The GlobalSchema resource accepts the following input properties:
- ResourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- SchemaType string | Pulumi.Azure Native. Api Management. Schema Type 
- Schema Type. Immutable.
- ServiceName string
- The name of the API Management service.
- Description string
- Free-form schema entity description.
- SchemaId string
- Schema id identifier. Must be unique in the current API Management service instance.
- Value object
- Json-encoded string for non json-based schema.
- ResourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- SchemaType string | SchemaType 
- Schema Type. Immutable.
- ServiceName string
- The name of the API Management service.
- Description string
- Free-form schema entity description.
- SchemaId string
- Schema id identifier. Must be unique in the current API Management service instance.
- Value interface{}
- Json-encoded string for non json-based schema.
- resourceGroup StringName 
- The name of the resource group. The name is case insensitive.
- schemaType String | SchemaType 
- Schema Type. Immutable.
- serviceName String
- The name of the API Management service.
- description String
- Free-form schema entity description.
- schemaId String
- Schema id identifier. Must be unique in the current API Management service instance.
- value Object
- Json-encoded string for non json-based schema.
- resourceGroup stringName 
- The name of the resource group. The name is case insensitive.
- schemaType string | SchemaType 
- Schema Type. Immutable.
- serviceName string
- The name of the API Management service.
- description string
- Free-form schema entity description.
- schemaId string
- Schema id identifier. Must be unique in the current API Management service instance.
- value any
- Json-encoded string for non json-based schema.
- resource_group_ strname 
- The name of the resource group. The name is case insensitive.
- schema_type str | SchemaType 
- Schema Type. Immutable.
- service_name str
- The name of the API Management service.
- description str
- Free-form schema entity description.
- schema_id str
- Schema id identifier. Must be unique in the current API Management service instance.
- value Any
- Json-encoded string for non json-based schema.
- resourceGroup StringName 
- The name of the resource group. The name is case insensitive.
- schemaType String | "xml" | "json"
- Schema Type. Immutable.
- serviceName String
- The name of the API Management service.
- description String
- Free-form schema entity description.
- schemaId String
- Schema id identifier. Must be unique in the current API Management service instance.
- value Any
- Json-encoded string for non json-based schema.
Outputs
All input properties are implicitly available as output properties. Additionally, the GlobalSchema resource produces the following output properties:
Supporting Types
SchemaType, SchemaTypeArgs    
- Xml
- xmlXML schema type.
- Json
- jsonJson schema type.
- SchemaType Xml 
- xmlXML schema type.
- SchemaType Json 
- jsonJson schema type.
- Xml
- xmlXML schema type.
- Json
- jsonJson schema type.
- Xml
- xmlXML schema type.
- Json
- jsonJson schema type.
- XML
- xmlXML schema type.
- JSON
- jsonJson schema type.
- "xml"
- xmlXML schema type.
- "json"
- jsonJson schema type.
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:apimanagement:GlobalSchema schema1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/schemas/{schemaId} 
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Native pulumi/pulumi-azure-native
- License
- Apache-2.0