Funnelback for developers

This page gives an overview of key resources and APIs for web developers who need to do advanced customisation or programmers developing applications on op of Funnelback.

Extending Funnelback using plugins

A Funnelback plugin is a package that can be installed onto the Funnelback server. By creating a plugin, you can package up custom code that is executed by Funnelback to provide additional functionality that others can use.

Plugins are written in Java.

Integrating with Funnelback

Funnelback APIs

Search results REST API

Retrieve Funnelback search results via HTTP GET requests and receive search results as templated HTML, JSON or XML.

All results REST API

Retrieve a full set of Funnelback search results via HTTP GET requests and receive search results as JSON or CSV.

Push API

A search data source that is updated via an API.


View available API calls for system operations

Public search endpoints

Freemarker-templated HTML

Search results returned as HTML, templated using Freemarker.

JSON search.json

Searches returned as JSON.

XML search.xml

Searches returned as XML.

Reference material


The core indexer and query processor and their associated binaries.

Web crawler

The Funnelback web crawler.

cache controller (Modern UI)

Display cached copies of gathered data.

Search package, data source and results page configuration parameters

Full list of all configuration parameters.

Search lifecycle and data model

Overview of the search lifecycle and data model.

FreeMarker macro reference

Funnelback-specific FreeMarker macros for use with Funnelbackl HTML search result templates.

Search lifecycle hook scripts

Write Groovy code to manipulate the search data model. (Superseded by plugins)

Workflow scripts

Run custom code as part of the data source update. (Superseded by plugins)

Custom Servlet Filter Hook

Advanced servlet filter level hook to manipulate requests/responses outside Funnelback. (Superseded by plugins)

Document filtering

Transform and analyse content before it is indexed using custom Groovy code. (Superseded by plugins)

© 2015- Squiz Pty Ltd