Skip to content
LambogeniusDocs

Compose using Liquid for Azure Logic Apps

Error codes

Every error code, its HTTP status, and how a workflow reads it.

Service provider/serviceProviders/lamboLiquidComposeOperation ComposeLiquid, shown in the designer as Compose using Liquid.

Reading an error

A failed action's message starts with a stable code, followed by the phase, the template location when known, and a correlation ID:

ScriptExecutionFailed: C# helper 'Account' threw System.ArgumentException. (phase: render; correlationId: 28c34ce40a3944a5bb67912b1efb1ec0)

In run history the runtime wraps it: The service provider action failed with error code '…' and error message '…'. Catch the failure with runAfter Failed and TimedOut, and take the code back out:

"Not_mapped": {
  "type": "Response",
  "kind": "Http",
  "runAfter": { "Compose_using_Liquid": [ "Failed", "TimedOut" ] },
  "inputs": {
    "statusCode": 422,
    "body": {
      "code": "@first(split(last(split(string(outputs('Compose_using_Liquid')?['body']?['message']), 'error message ''')), ':'))",
      "message": "@outputs('Compose_using_Liquid')?['body']?['message']"
    }
  }
}

Codes

CodeHTTPTypical cause
InvalidRequest400Missing or contradictory inputs, timeoutSeconds above the host maximum, an invalid Function registry
InvalidInputJson400Duplicate property names, numbers out of range
InvalidInputXml400Malformed XML, or a DTD
TemplateNotFound404The template or a partial is missing
TemplateAccessDenied403A path outside the template folder
TemplateSyntaxError400Liquid syntax, an invalid XPath, an include cycle, a misplaced csharp block, an unsupported tag
UnknownFilter400A misspelled or lowercase filter
InvalidOutputJson400JSON output that is not exactly one valid value
ScriptsDisabled403A C# block without enableScripts, or LiquidCompose__AllowScripts not true
UnsupportedScriptFeature400Overloads, generics, two parameters, int, static fields
ScriptCompilationFailed400A C# compile error, at the template line
ScriptExecutionFailed400A helper threw, returned null, or got a null or wrongly typed value
FunctionNotAllowed403Alias not in allowedFunctionAliases or the registry, or disabled
FunctionAuthenticationFailed424401/403 from the Function, a missing key setting, or no token
FunctionHttpFailed424A non-200 status, a redirect or a network failure
FunctionResponseInvalid424Not text/plain UTF-8, or too large
FunctionTimeout424No answer within the entry's timeoutSeconds
ResourceLimitExceeded413A size, depth, loop, node or call-count limit
TransformationTimeout400The deadline passed; the worker was stopped
WorkerUnavailable503The worker is missing or failed to start, or every worker is busy and the queue is full

With LiquidCompose__PlatformRetries=true, the Function, timeout and internal failures use 5xx statuses instead.