Producer - Scoped (deprecated)

  • Release version: Australia
  • Updated March 12, 2026
  • 1 minute to read
  • The Producer API provides methods that enable you to push data from a ServiceNow instance to a Kafka topic.

    Note:
    This API is deprecated and replaced by the ProducerV2 - Scoped API.

    This API requires the ServiceNow Integration Hub Action Step - Kafka Producer plugin (com.glide.hub.action_step.kafka) and is provided within the sn_ih_kafka namespace.

    Producer - send(String topic, String key, String message, Boolean isSync)

    Sends the specified message to the specified Kafka topic.

    Table 1. Parameters
    Name Type Description
    topic String

    Name of the topic to publish the message to. A topic stores messages of the same type. For example, a topic named Payments might store messages about recent payments.

    When you enter the topic name, include everything that comes after the instance name prefix. For example, if the complete topic name is snc.<instancename>.sn_streamconnect.<topicname>, enter sn_streamconnect.<topicname> in the topic field.

    key String Name of the key for a specific partition. Topics can be partitioned. Messages with the same key are stored in the same partition. For example, payment messages with a key of June would all be stored in the same partition of the Payments topic.
    message String Message text.
    isSync Boolean Flag that indicates whether to require the flow to wait for the step to complete before continuing.
    Valid values:
    • true: Wait for the step to complete before continuing the associated flow.
    • false: Do not wait for the step to complete before continuing the associated flow.
    Table 2. Returns
    Type Description
    None

    This example shows how to send changed incident information to the changed_incidents Kafka topic.

    var message = {
      'number': current.number.toString(),
      'short_description': current.short_description.toString(),
      'caller_id': current.caller_id.getDisplayValue(),
      'priority': current.priority.toString(),
      'state': current.state.toString()
    };
    
    var producer = new sn_ih_kafka.Producer();
    producer.send('changed_incidents', current.number.toString(), JSON.stringify(message), false);