Skip to main content
The Go SDK and docs are currently in beta. Report issues on GitHub.

Supported Types

EasyInputMessageRoleUser

easyInputMessageRoleUnion := components.CreateEasyInputMessageRoleUnionEasyInputMessageRoleUser(components.EasyInputMessageRoleUser{/* values here */})

EasyInputMessageRoleSystem

easyInputMessageRoleUnion := components.CreateEasyInputMessageRoleUnionEasyInputMessageRoleSystem(components.EasyInputMessageRoleSystem{/* values here */})

EasyInputMessageRoleAssistant

easyInputMessageRoleUnion := components.CreateEasyInputMessageRoleUnionEasyInputMessageRoleAssistant(components.EasyInputMessageRoleAssistant{/* values here */})

EasyInputMessageRoleDeveloper

easyInputMessageRoleUnion := components.CreateEasyInputMessageRoleUnionEasyInputMessageRoleDeveloper(components.EasyInputMessageRoleDeveloper{/* values here */})

Union Discrimination

Use the Type field to determine which variant is active, then access the corresponding field:
switch easyInputMessageRoleUnion.Type {
	case components.EasyInputMessageRoleUnionTypeEasyInputMessageRoleUser:
		// easyInputMessageRoleUnion.EasyInputMessageRoleUser is populated
	case components.EasyInputMessageRoleUnionTypeEasyInputMessageRoleSystem:
		// easyInputMessageRoleUnion.EasyInputMessageRoleSystem is populated
	case components.EasyInputMessageRoleUnionTypeEasyInputMessageRoleAssistant:
		// easyInputMessageRoleUnion.EasyInputMessageRoleAssistant is populated
	case components.EasyInputMessageRoleUnionTypeEasyInputMessageRoleDeveloper:
		// easyInputMessageRoleUnion.EasyInputMessageRoleDeveloper is populated
}