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!
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:
- JSON stringify the payload
- Generate HMAC-SHA256 using this salt and the stringified payload
- 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