Skip to content

Latest commit

 

History

History
88 lines (83 loc) · 2.51 KB

File metadata and controls

88 lines (83 loc) · 2.51 KB
description Automatically generated file. DO NOT MODIFY
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.agent_instance import AgentInstance
from msgraph_beta.generated.models.agent_card_manifest import AgentCardManifest
from msgraph_beta.generated.models.agent_provider import AgentProvider
from msgraph_beta.generated.models.agent_capabilities import AgentCapabilities
from msgraph_beta.generated.models.agent_extension import AgentExtension
from msgraph_beta.generated.models.agent_extension_params import AgentExtensionParams
from msgraph_beta.generated.models.agent_skill import AgentSkill
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = AgentInstance(
	agent_card_manifest = AgentCardManifest(
		owner_ids = [
			"0ef68a76-e247-41dd-947b-41282760a2ac",
		],
		originating_store = "Copilot Studio",
		display_name = "Conditional Access Agent Card",
		description = "Manages organizational conditional access policies",
		icon_url = "https://example.com/icon.png",
		provider = AgentProvider(
			organization = "Test Organization",
			url = "https://test.com",
		),
		protocol_version = "1.0",
		version = "1.0.0",
		documentation_url = "https://example.com/docs",
		capabilities = AgentCapabilities(
			streaming = False,
			push_notifications = False,
			state_transition_history = True,
			extensions = [
				AgentExtension(
					uri = "https://contoso.example.com/a2a/capabilities/secureMessaging",
					description = None,
					required = False,
					params = AgentExtensionParams(
						additional_data = {
								"use_https" : True,
						}
					),
				),
			],
		),
		default_input_modes = [
			"application/json",
		],
		default_output_modes = [
			"application/json",
			"text/html",
		],
		supports_authenticated_extended_card = True,
		skills = [
			AgentSkill(
				id = "threat-detection",
				display_name = "Threat Detection",
				description = "Detect security threats in real-time",
				tags = [
					"security",
					"threat",
					"detection",
				],
				examples = [
					"Analyze this log for threats",
					"Check for malware",
				],
				input_modes = [
					"application/json",
					"text/plain",
				],
				output_modes = [
					"application/json",
					"text/html",
				],
			),
		],
	),
)

result = await graph_client.agent_registry.agent_instances.by_agent_instance_id('agentInstance-id').patch(request_body)