// This is an automatically generated code sample.
// To make this code sample work in your Oracle Cloud tenancy,
// please replace the values for any parameters whose current values do not fit
// your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
// boolean, number, and enum parameters with values not fitting your use case).
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Oci.IdentitydomainsService;
using Oci.Common;
using Oci.Common.Auth;
namespace Oci.Sdk.DotNet.Example.Identitydomains
{
public class PutSchemaExample
{
public static async Task Main()
{
// Create a request and dependent object(s).
var schema = new Oci.IdentitydomainsService.Models.Schema
{
Schemas = new List<string>
{
"EXAMPLE--Value"
},
IdcsMapsToSameTargetAttributeNameAs = "EXAMPLE-idcsMapsToSameTargetAttributeNameAs-Value",
ExternalId = "ocid1.test.oc1..<unique_ID>EXAMPLE-externalId-Value",
Name = "EXAMPLE-name-Value",
IdcsResourceTypes = new List<string>
{
"EXAMPLE--Value"
},
Description = "EXAMPLE-description-Value",
IdcsMappable = false,
IdcsAttributeCacheable = true,
IdcsOverrideCommonAttribute = true,
Attributes = new List<Oci.IdentitydomainsService.Models.SchemaAttributes>
{
new Oci.IdentitydomainsService.Models.SchemaAttributes
{
Name = "EXAMPLE-name-Value",
IdcsDisplayNameMessageId = "ocid1.test.oc1..<unique_ID>EXAMPLE-idcsDisplayNameMessageId-Value",
IdcsRtsaHideAttribute = true,
LocalizedDisplayName = new Oci.IdentitydomainsService.Models.SchemaLocalizedDisplayName
{
Value = "EXAMPLE-value-Value",
Locale = "EXAMPLE-locale-Value"
},
Type = Oci.IdentitydomainsService.Models.SchemaAttributes.TypeEnum.DateTime,
MultiValued = false,
Description = "EXAMPLE-description-Value",
Required = false,
IdcsReturnEmptyWhenNull = true,
CanonicalValues = new List<string>
{
"EXAMPLE--Value"
},
IdcsDefaultValue = "EXAMPLE-idcsDefaultValue-Value",
LocalizedCanonicalValues = new List<Oci.IdentitydomainsService.Models.SchemaLocalizedCanonicalValues>
{
new Oci.IdentitydomainsService.Models.SchemaLocalizedCanonicalValues
{
Value = "EXAMPLE-value-Value",
CanonicalValue = new List<string>
{
"EXAMPLE--Value"
},
Locale = "EXAMPLE-locale-Value"
}
},
CaseExact = true,
Mutability = Oci.IdentitydomainsService.Models.SchemaAttributes.MutabilityEnum.ReadOnly,
Returned = Oci.IdentitydomainsService.Models.SchemaAttributes.ReturnedEnum.Request,
Uniqueness = Oci.IdentitydomainsService.Models.SchemaAttributes.UniquenessEnum.Server,
IdcsCsvAttributeName = "EXAMPLE-idcsCsvAttributeName-Value",
IdcsComplexAttributeNameMappings = new List<Oci.IdentitydomainsService.Models.SchemaIdcsComplexAttributeNameMappings>
{
new Oci.IdentitydomainsService.Models.SchemaIdcsComplexAttributeNameMappings
{
Name = "EXAMPLE-name-Value",
MapsTo = "EXAMPLE-mapsTo-Value",
IdcsRtsaHideAttribute = false
}
},
IdcsICFBundleAttributeName = "EXAMPLE-idcsICFBundleAttributeName-Value",
IdcsICFRequired = true,
IdcsICFAttributeType = Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsICFAttributeTypeEnum.Guardedstring,
IdcsCsvAttributeNameMappings = new List<Oci.IdentitydomainsService.Models.SchemaIdcsCsvAttributeNameMappings>
{
new Oci.IdentitydomainsService.Models.SchemaIdcsCsvAttributeNameMappings
{
ColumnHeaderName = "EXAMPLE-columnHeaderName-Value",
DeprecatedColumnHeaderName = "EXAMPLE-deprecatedColumnHeaderName-Value",
MapsTo = "EXAMPLE-mapsTo-Value",
DefaultValue = "EXAMPLE-defaultValue-Value",
MultiValueDelimiter = "EXAMPLE-multiValueDelimiter-Value",
CsvColumnForResolvingResourceType = "EXAMPLE-csvColumnForResolvingResourceType-Value",
ResolveValueUsingResourceType = new List<Oci.IdentitydomainsService.Models.SchemaResolveValueUsingResourceType>
{
new Oci.IdentitydomainsService.Models.SchemaResolveValueUsingResourceType
{
ValueToBeResolved = "EXAMPLE-valueToBeResolved-Value",
ResolveBy = "EXAMPLE-resolveBy-Value"
}
},
ReferencedResourceTypeUniqueAttributeNameMappings = new List<Oci.IdentitydomainsService.Models.SchemaReferencedResourceTypeUniqueAttributeNameMappings>
{
new Oci.IdentitydomainsService.Models.SchemaReferencedResourceTypeUniqueAttributeNameMappings
{
ResourceTypeAttributeName = "EXAMPLE-resourceTypeAttributeName-Value",
MapsFromColumnName = "EXAMPLE-mapsFromColumnName-Value"
}
}
}
},
ReferenceTypes = new List<string>
{
"EXAMPLE--Value"
},
IdcsDeprecatedSinceVersion = 383,
IdcsAddedSinceVersion = 302,
IdcsDeprecatedSinceReleaseNumber = "EXAMPLE-idcsDeprecatedSinceReleaseNumber-Value",
IdcsAddedSinceReleaseNumber = "EXAMPLE-idcsAddedSinceReleaseNumber-Value",
IdcsMinLength = 709,
IdcsMaxLength = 583,
IdcsMinValue = 334,
IdcsMaxValue = 417,
IdcsMultiLanguage = true,
IdcsRefResourceAttributes = new List<string>
{
"EXAMPLE--Value"
},
IdcsIndirectRefResourceAttributes = new List<string>
{
"EXAMPLE--Value"
},
IdcsAutoIncrementSeqName = "EXAMPLE-idcsAutoIncrementSeqName-Value",
IdcsValuePersisted = false,
IdcsSensitive = Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsSensitiveEnum.Hash,
IdcsInternal = false,
IdcsTrimStringValue = true,
IdcsSearchable = false,
IdcsGenerated = false,
IdcsAuditable = false,
IdcsTargetAttributeName = "EXAMPLE-idcsTargetAttributeName-Value",
IdcsMapsToSameTargetAttributeNameAs = "EXAMPLE-idcsMapsToSameTargetAttributeNameAs-Value",
IdcsTargetNormAttributeName = "EXAMPLE-idcsTargetNormAttributeName-Value",
IdcsTargetAttributeNameToMigrateFrom = "EXAMPLE-idcsTargetAttributeNameToMigrateFrom-Value",
IdcsTargetUniqueConstraintName = "EXAMPLE-idcsTargetUniqueConstraintName-Value",
IdcsToTargetMapper = "EXAMPLE-idcsToTargetMapper-Value",
IdcsFromTargetMapper = "EXAMPLE-idcsFromTargetMapper-Value",
IdcsDisplayName = "EXAMPLE-idcsDisplayName-Value",
IdcsCanonicalValueSourceResourceType = "EXAMPLE-idcsCanonicalValueSourceResourceType-Value",
IdcsCanonicalValueSourceFilter = "EXAMPLE-idcsCanonicalValueSourceFilter-Value",
IdcsCanonicalValueSourceResourceTypeID = "EXAMPLE-idcsCanonicalValueSourceResourceTypeID-Value",
IdcsCanonicalValueSourceDisplayAttrName = "EXAMPLE-idcsCanonicalValueSourceDisplayAttrName-Value",
IdcsCanonicalValueSourceKeyAttrName = "EXAMPLE-idcsCanonicalValueSourceKeyAttrName-Value",
IdcsCanonicalValueType = Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsCanonicalValueTypeEnum.Dynamic,
IdcsValidateReference = false,
IdcsCompositeKey = new List<string>
{
"EXAMPLE--Value"
},
IdcsFetchComplexAttributeValues = false,
IdcsScimCompliant = true,
IdcsAttributeMappable = true,
IdcsValuePersistedInOtherAttribute = true,
IdcsPii = true,
IdcsExcludeFromUpgradePatch = true,
SubAttributes = new List<Oci.IdentitydomainsService.Models.SchemaSubAttributes>
{
new Oci.IdentitydomainsService.Models.SchemaSubAttributes
{
Name = "EXAMPLE-name-Value",
IdcsRequiresImmediateReadAfterWriteForAccessFlows = true,
IdcsRequiresWriteForAccessFlows = false,
IdcsDisplayNameMessageId = "ocid1.test.oc1..<unique_ID>EXAMPLE-idcsDisplayNameMessageId-Value",
IdcsRtsaHideAttribute = true,
IdcsInternal = true,
Type = Oci.IdentitydomainsService.Models.SchemaSubAttributes.TypeEnum.String,
MultiValued = false,
Description = "EXAMPLE-description-Value",
Required = false,
IdcsReturnEmptyWhenNull = true,
CanonicalValues = new List<string>
{
"EXAMPLE--Value"
},
IdcsDefaultValue = "EXAMPLE-idcsDefaultValue-Value",
CaseExact = false,
Mutability = Oci.IdentitydomainsService.Models.SchemaSubAttributes.MutabilityEnum.ReadWrite,
Returned = Oci.IdentitydomainsService.Models.SchemaSubAttributes.ReturnedEnum.Request,
IdcsCsvAttributeName = "EXAMPLE-idcsCsvAttributeName-Value",
Uniqueness = Oci.IdentitydomainsService.Models.SchemaSubAttributes.UniquenessEnum.Server,
ReferenceTypes = new List<string>
{
"EXAMPLE--Value"
},
IdcsDeprecatedSinceVersion = 6,
IdcsAddedSinceVersion = 184,
IdcsDeprecatedSinceReleaseNumber = "EXAMPLE-idcsDeprecatedSinceReleaseNumber-Value",
IdcsAddedSinceReleaseNumber = "EXAMPLE-idcsAddedSinceReleaseNumber-Value",
IdcsMinLength = 877,
IdcsMaxLength = 983,
IdcsMinValue = 925,
IdcsMaxValue = 609,
IdcsOnlyOneValueCanBeTrue = true,
IdcsMaxValuesReturned = 257,
IdcsOneValueMustBeTrue = false,
IdcsRefResourceAttributes = new List<string>
{
"EXAMPLE--Value"
},
IdcsIndirectRefResourceAttributes = new List<string>
{
"EXAMPLE--Value"
},
IdcsValuePersisted = true,
IdcsSensitive = Oci.IdentitydomainsService.Models.SchemaSubAttributes.IdcsSensitiveEnum.Hash,
IdcsTrimStringValue = true,
IdcsSearchable = false,
IdcsGenerated = true,
IdcsAuditable = false,
IdcsTargetAttributeName = "EXAMPLE-idcsTargetAttributeName-Value",
IdcsTargetNormAttributeName = "EXAMPLE-idcsTargetNormAttributeName-Value",
IdcsTargetAttributeNameToMigrateFrom = "EXAMPLE-idcsTargetAttributeNameToMigrateFrom-Value",
IdcsTargetUniqueConstraintName = "EXAMPLE-idcsTargetUniqueConstraintName-Value",
IdcsToTargetMapper = "EXAMPLE-idcsToTargetMapper-Value",
IdcsFromTargetMapper = "EXAMPLE-idcsFromTargetMapper-Value",
IdcsDisplayName = "EXAMPLE-idcsDisplayName-Value",
IdcsCanonicalValueSourceResourceType = "EXAMPLE-idcsCanonicalValueSourceResourceType-Value",
IdcsCanonicalValueSourceFilter = "EXAMPLE-idcsCanonicalValueSourceFilter-Value",
IdcsCanonicalValueSourceResourceTypeID = "EXAMPLE-idcsCanonicalValueSourceResourceTypeID-Value",
IdcsCanonicalValueSourceDisplayAttrName = "EXAMPLE-idcsCanonicalValueSourceDisplayAttrName-Value",
IdcsCanonicalValueSourceKeyAttrName = "EXAMPLE-idcsCanonicalValueSourceKeyAttrName-Value",
IdcsValidateReference = true,
IdcsScimCompliant = false,
IdcsAttributeMappable = true,
IdcsAttributeCacheable = true,
IdcsuiOrder = 62,
IdcsuiRegexp = "EXAMPLE-idcsuiRegexp-Value",
IdcsuiVisible = false,
IdcsuiWidget = Oci.IdentitydomainsService.Models.SchemaSubAttributes.IdcsuiWidgetEnum.Textarea,
IdcsValuePersistedInOtherAttribute = false,
IdcsPii = true,
IdcsSanitize = true,
IdcsExcludeFromUpgradePatch = true
}
},
IdcsRefResourceAttribute = "EXAMPLE-idcsRefResourceAttribute-Value",
IdcsAttributeCacheable = true,
IdcsuiOrder = 251,
IdcsuiRegexp = "EXAMPLE-idcsuiRegexp-Value",
IdcsuiVisible = true,
IdcsuiWidget = Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsuiWidgetEnum.Combobox,
IdcsFeatures = new List<Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsFeaturesEnum>
{
Oci.IdentitydomainsService.Models.SchemaAttributes.IdcsFeaturesEnum.Social
},
IdcsOptionalPiiCanonicalValues = new List<string>
{
"EXAMPLE--Value"
},
IdcsSanitize = false,
IdcsOverrideCommonAttribute = true,
IdcsIgnoreReadOnlyAndImmutableRefAttrsDuringForceDelete = true,
IdcsAllowUpdatesInReadOnlyMode = true,
IdcsPaginateResponse = true,
IdcsRequiresWriteForAccessFlows = true,
IdcsRequiresImmediateReadAfterWriteForAccessFlows = false
}
}
};
var putSchemaRequest = new Oci.IdentitydomainsService.Requests.PutSchemaRequest
{
SchemaId = "ocid1.test.oc1..<unique_ID>EXAMPLE-schemaId-Value",
Authorization = "EXAMPLE-authorization-Value",
ResourceTypeSchemaVersion = "EXAMPLE-resourceTypeSchemaVersion-Value",
Schema = schema,
IfMatch = "EXAMPLE-ifMatch-Value",
OpcRetryToken = "EXAMPLE-opcRetryToken-Value"
};
// Create a default authentication provider that uses the DEFAULT
// profile in the configuration file.
// Refer to <see href="https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File>the public documentation</see> on how to prepare a configuration file.
var provider = new ConfigFileAuthenticationDetailsProvider("DEFAULT");
try
{
// Create a service client and send the request.
using (var client = new IdentityDomainsClient(provider, new ClientConfiguration()))
{
var response = await client.PutSchema(putSchemaRequest);
// Retrieve value from the response.
var schemasValue = response.Schema.Schemas;
}
}
catch (Exception e)
{
Console.WriteLine($"PutSchema Failed with {e.Message}");
throw e;
}
}
}
}