**Overview**

In AWS it is possible to trigger step functions through an API Gateway integration, see https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-api-gateway.html

Similar integrations already occur within localstack, however the step function URIs are notably missing. See lines 66-88 of https://github.com/localstack/localstack/blob/master/localstack/services/apigateway/apigateway_listener.py



┆Issue is synchronized with this [Jira Bug](https://localstack.atlassian.net/browse/LOC-107) by [Unito](https://www.unito.io/learn-more)

import re
import json
import base64
from six.moves.urllib.parse import quote_plus, unquote_plus
from localstack import config
from localstack.utils.common import recurse_object, extract_jsonpath
class VelocityInput(object):
    """Simple class to mimick the behavior of variable '$input' in AWS API Gateway integration velocity templates.
    See: http://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html"""
    def __init__(self, value):
        self.value = value
    def path(self, path):
        value = self.value if isinstance(self.value, dict) else json.loads(self.value)
        return extract_jsonpath(value, path)
    def json(self, path):
        return json.dumps(self.path(path))
    def __getattr__(self, name):
        return self.value.get(name)
    def __repr__(self):
        return '$input'
class VelocityUtil(object):