Custom Webhook Filters

Custom Webhook Filters

Overview

When setting up a webhook, if you want to filter on a specific value in the payload, you can add a custom expression to the column WHSDataFilterExpression.
Setting this value will cause records to be written into tblIQApplicationLog when it skips a record, and when it fails. This can be used to debug problems with your expression.

Examples of Expressions

Logic:       cusCode == 'Web'
JSON:     $.cusCode=='Web'
XML:        /root/cusCode[.="Web"]

Logic:      cusCode == 'Web' and POPNum == 'OPO123788'
JSON:     $.cusCode=='Web' && $.POPNum=='OPO123788'
XML:        /root[./cusCode="Web" and ./POPNum="OPO123788"]

Logic:      cusCode == 'Web' or POPNum == 'OPO123788'
JSON:     $.cusCode=='Web 123' || $.POPNum=='OPO123788'
XML:        /root[./cusCode="Web" or ./POPNum="OPO123788"]

Logic:      POPNum == 'OPO123788' or (cusCode == 'Web 123' and cusCode == 'Web')
JSON:     $.POPNum=='OPO123788' || $.cusCode=='Web 123' && $.cusCode=='Web'
XML:        /root[./POPNum="OPO123788" or ./cusCode="Web 123" and ./cusCode="Web"]

Logic:      (POPNum == 'OPO123788' or cusCode == 'Web 123') and cusCode == 'Web'
JSON:     $.POPNum=='OPO123788' && $.cusCode=='Web 123'
                    $.POPNum=='OPO123788' && $.cusCode=='Web'
XML:        /root[(./POPNum="OPO123788" or ./cusCode="Web 123") and ./cusCode="Web"]

Logic:      AcceptanceDetails.QuoteNo == 'Q975891'
JSON:     $.AcceptanceDetails.QuoteNo=='Q975891'
XML:        /root/AcceptanceDetails/QuoteNo[.="Q975891"]

Logic:      AcceptanceDetails.Products[first].QuoteNo == 'Q975891'
JSON:     $.AcceptanceDetails.Products[0].QuoteNo=='Q975891'
XML:        /root/AcceptanceDetails/Products/element[1]/QuoteNo[.="Q975891"]

Logic:      AcceptanceDetails.Products[any].QuoteNo == 'Q975891'
JSON:     $.AcceptanceDetails.Products[*].QuoteNo=='Q975891'
XML:        /root/AcceptanceDetails/Products/element/QuoteNo[.="Q975891"]

Documentation on how to use JsonPath to filter JSON


Documentation on how to use XPath to filter XML



If it's JSON payload, put a JSON filter,
If it's XML payload, you need to put XML filter

    • Related Articles

    • Setting global and default user filters on boards

      On the All Jobs Board, Pre & Production Boards, Job Sections Board, Imposition Board, Sales Order Board, Dispatch Board, General Ledger Accounts Board and Invoice Board, filters can be created and made available to all users by a user with the ...
    • Define Filters

      This is where you create the filters that are shown when quoting under ‘Simplified’. All this is managed from ‘Define Filters’ under ‘Factory Capabilities’ in the main heading bar. You will see a list of filter sets And at the bottom the option to ...
    • Manage your own Custom Quote Templates

      Access to the Custom Quote Template definitions is available from the Factory Capabilities -> Custom Templates menu item. The board lists the active custom templates in the order they are presented to the user when creating a custom product quote. ...
    • v46 - Webhook - Quote AcceptanceCreated

      The main difference between the AcceptanceCreated webhook from the AcceptQuote webhook is that the AcceptanceCreated webhook sends a full Quote Process Acceptance Details Object with All Acceptance Product Details and Acceptance Item Details ...
    • v46 - Webhook - Create Jobs

      CreateJobs webhook will fire immediately when the quote reaches the submits artwork page. You can download the sample payload via the attachments.