// 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).

import * as oda from "oci-oda";
import common = require("oci-common");

// 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.

const provider: common.ConfigFileAuthenticationDetailsProvider = new common.ConfigFileAuthenticationDetailsProvider();

(async () => {
    try {
     // Create a service client
     const client = new oda.ManagementClient({ authenticationDetailsProvider: provider });

     // Create a request and dependent object(s).
	const  bulkCreateSkillEntitiesDetails = {
		items: [{
				type: "COMPOSITE",				attributes: [{
						name: "EXAMPLE-name-Value",
						type: oda.models.EntityAttributeType.Boolean,
						naturalLanguageMapping: {
							languages: [{
									languageTag: "EXAMPLE-languageTag-Value",
									primaryName: "EXAMPLE-primaryName-Value",
									names: [{
											name: "EXAMPLE-name-Value",

											}
											],

									}
									],

							}
,
						isMultiValue: true,
						isFuzzyMatch: false,
						isInvertComparisons: false,
						temporalPreference: oda.models.TemporalPreference.Nearest,
						entityName: "EXAMPLE-entityName-Value",

						}
						],
				actions: [{
						name: "EXAMPLE-name-Value",
						crudType: "EXAMPLE-crudType-Value",
						naturalLanguageMapping: {
							languages: [{
									languageTag: "EXAMPLE-languageTag-Value",
									primaryName: "EXAMPLE-primaryName-Value",
									names: [{
											name: "EXAMPLE-name-Value",

											}
											],

									}
									],

							}
,
						arguments: [{
								name: "EXAMPLE-name-Value",
								type: oda.models.EntityAttributeType.Number,
								metaType: "EXAMPLE-metaType-Value",
								naturalLanguageMapping: {
									languages: [{
											languageTag: "EXAMPLE-languageTag-Value",
											primaryName: "EXAMPLE-primaryName-Value",
											names: [{
													name: "EXAMPLE-name-Value",

													}
													],

											}
											],

									}
,
								isMultiValue: false,
								entityName: "EXAMPLE-entityName-Value",

								}
								],

						}
						],
				naturalLanguageMapping: {
					languages: [{
							languageTag: "EXAMPLE-languageTag-Value",
							primaryName: "EXAMPLE-primaryName-Value",
							names: [{
									name: "EXAMPLE-name-Value",

									}
									],

							}
							],

					}
,
				name: "EXAMPLE-name-Value"

				}
				],

		}

	const bulkCreateSkillEntitiesRequest: oda.requests.BulkCreateSkillEntitiesRequest = { 
	odaInstanceId: "ocid1.test.oc1..<unique_ID>EXAMPLE-odaInstanceId-Value",
	skillId: "ocid1.test.oc1..<unique_ID>EXAMPLE-skillId-Value",
	bulkCreateSkillEntitiesDetails: bulkCreateSkillEntitiesDetails,
	opcRequestId: "GV3ADKLDVEZPRB6TKPD3<unique_ID>",
	opcRetryToken: "EXAMPLE-opcRetryToken-Value",

		}; 


     // Send request to the Client.
     const bulkCreateSkillEntitiesResponse = await client.bulkCreateSkillEntities(bulkCreateSkillEntitiesRequest);
     }
     catch (error) {
         console.log("bulkCreateSkillEntities Failed with error  " + error);
     }
})();