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

Supported Types

OpenAIResponseInputMessageItemRoleUser

openAIResponseInputMessageItemRoleUnion := components.CreateOpenAIResponseInputMessageItemRoleUnionOpenAIResponseInputMessageItemRoleUser(components.OpenAIResponseInputMessageItemRoleUser{/* values here */})

OpenAIResponseInputMessageItemRoleSystem

openAIResponseInputMessageItemRoleUnion := components.CreateOpenAIResponseInputMessageItemRoleUnionOpenAIResponseInputMessageItemRoleSystem(components.OpenAIResponseInputMessageItemRoleSystem{/* values here */})

OpenAIResponseInputMessageItemRoleDeveloper

openAIResponseInputMessageItemRoleUnion := components.CreateOpenAIResponseInputMessageItemRoleUnionOpenAIResponseInputMessageItemRoleDeveloper(components.OpenAIResponseInputMessageItemRoleDeveloper{/* values here */})

Union Discrimination

Use the Type field to determine which variant is active, then access the corresponding field:
switch openAIResponseInputMessageItemRoleUnion.Type {
	case components.OpenAIResponseInputMessageItemRoleUnionTypeOpenAIResponseInputMessageItemRoleUser:
		// openAIResponseInputMessageItemRoleUnion.OpenAIResponseInputMessageItemRoleUser is populated
	case components.OpenAIResponseInputMessageItemRoleUnionTypeOpenAIResponseInputMessageItemRoleSystem:
		// openAIResponseInputMessageItemRoleUnion.OpenAIResponseInputMessageItemRoleSystem is populated
	case components.OpenAIResponseInputMessageItemRoleUnionTypeOpenAIResponseInputMessageItemRoleDeveloper:
		// openAIResponseInputMessageItemRoleUnion.OpenAIResponseInputMessageItemRoleDeveloper is populated
}