Webhook GeoJSON Fails When Used as Geometry Parameter

Dylan Paterson
Dylan Paterson
  • Updated

Consideration

When running a workspace through a webhook in FME Flow, you may attempt to pass standard URL-encoded GeoJSON into a Geometry published parameter. Instead of working, the job fails with JSON parsing errors in the Translation Log. Users will see log messages similar to the following:

A JSON syntax was found at line 1, column 2 
Unexpected character: 't' . One of the following characters was expected: '"', '}'
The value of the import attribute '__GeometryReplacerTemp__' is '{type:Point' .
It contained invalid JSON and  could not be Parsed

Why This Happens

Geometry published parameters in FME Flow do not accept standard URL-encoded GeoJSON directly.

When a Geometry parameter is used:

  • FME Flow applies a proprietary internal encoding before sending the value to the FME Engine.
  • This encoding ensures the geometry is interpreted correctly by the engine.
  • If you manually pass URL-encoded GeoJSON through a webhook, it bypasses this required encoding step.
  • FME Engine then attempts to parse the value as JSON and fails, resulting in a syntax error.

This behavior is by design and affects webhooks, or HTTP calls that attempt to send raw GeoJSON into a Geometry parameter.

How to Resolve It

Option 1 (Recommended): Use a Text Parameter Instead of a Geometry Parameter

If the workspace is only run through a webhook:

1. Replace the Geometry published parameter with a Text parameter.

2. Pass the GeoJSON content as plain text.

3. Use a GeometryReplacer transformer to build the geometry from the text value.

This avoids the requirement for a proprietary encoding and is the simplest solution.

Option 2: Pass the GeoJSON in the POST Body and Read It as a Dataset

If the workspace must also support manual execution in FME Flow and requires the geometry web UI control:

1. Pass the GeoJSON in the HTTP POST body.

2. Configure the workspace to read the POST body as a dataset.

3. Parse and construct the geometry inside the workspace.

This approach is more complex and may require additional workspace changes. For detailed instructions on how to implement this workaround, refer to the Send Source Data to FME Flow with HTTP POST article.

If you are still experiencing issues or have questions, please contact Safe Software Support

Was this article helpful?

We're sorry to hear that.

Please tell us why.

As of January 14th, 2026, comments on knowledge base articles have been closed. To make sure questions don’t get missed and to enable more community support, we’ve moved discussions to the FME Community. If you have a question or a comment about this article, please create a new post or create a support ticket.