Skip to main content

AgentCreateInput

Input data for creating a new agent.

Provides complete configuration for a new agent including localized content, webhook integration, authentication, and behavioral settings.

input AgentCreateInput {
names: [LocalizedStringInput!]!
descriptions: [LocalizedStringInput!]
welcomeMessages: [LocalizedStringInput!]
buttonLabels: [LocalizedStringInput!]
active: Boolean!
types: [String!]!
trigger: AgentTrigger!
interactionMode: AgentInteractionMode!
webhookUrl: String!
webhookTimeoutMs: Int! = 30000
webhookSignatureSalt: String
webhookBasicAuthUsername: String
webhookBasicAuthPassword: String
}

Fields​

AgentCreateInput.names ● [LocalizedStringInput!]! non-null input​

Localized display names for the agent.

Validation: Array must not be empty, must contain unique language entries.

AgentCreateInput.descriptions ● [LocalizedStringInput!] list input​

Localized descriptions for the agent.

Validation: Array must not be empty, must contain unique language entries.

AgentCreateInput.welcomeMessages ● [LocalizedStringInput!] list input​

Localized welcome messages displayed when the agent is activated.

Validation: Array must not be empty, must contain unique language entries.

AgentCreateInput.buttonLabels ● [LocalizedStringInput!] list input​

Localized button labels for the agent.

Validation: Array must not be empty, must contain unique language entries.

AgentCreateInput.active ● Boolean! non-null scalar​

Whether the agent should be active upon creation.

AgentCreateInput.types ● [String!]! non-null scalar​

Classification types for the agent.

Validation: Must be in SCREAMING_SNAKE_CASE format (e.g., ORDER_SUPPORT, PRODUCT_INFO).

AgentCreateInput.trigger ● AgentTrigger! non-null enum​

Trigger mechanism that activates the agent interaction.

AgentCreateInput.interactionMode ● AgentInteractionMode! non-null enum​

Interaction mode defining the conversational pattern.

AgentCreateInput.webhookUrl ● String! non-null scalar​

URL of the external webhook that processes agent requests. Maximum length of 2048 characters.

AgentCreateInput.webhookTimeoutMs ● Int! non-null scalar​

Timeout in milliseconds for webhook requests.

AgentCreateInput.webhookSignatureSalt ● String scalar​

The salt used to generate HMAC-SHA256 signature for webhook authentication.

When configured, the webhook will include an 'X-Propeller-Signature' header with format 'sha256=<hex_signature>'.

To verify the signature:

  1. JSON stringify the payload
  2. Generate HMAC-SHA256 using this salt and the stringified payload
  3. Compare with the received signature using crypto.timingSafeEqual() to prevent timing attacks

Example (Node.js): const expectedSig = crypto.createHmac('sha256', salt).update(JSON.stringify(payload), 'utf8').digest('hex'); const receivedSig = signature.replace('sha256=', ''); return crypto.timingSafeEqual(Buffer.from(expectedSig, 'hex'), Buffer.from(receivedSig, 'hex'));

AgentCreateInput.webhookBasicAuthUsername ● String scalar​

Username for HTTP Basic Authentication.

Used together with basicAuthPassword to provide authentication credentials for webhook requests. Both username and password must be provided or both omitted.

AgentCreateInput.webhookBasicAuthPassword ● String scalar​

Password for HTTP Basic Authentication.

Used together with basicAuthUsername to provide authentication credentials for webhook requests. Both username and password must be provided or both omitted.

Member Of​

agentCreate mutation