from .object import buildObject def buildRequest(definition, outputs): request = { "method": definition.method, "path": definition.path, } if hasattr(definition, "keys"): request["object"] = buildObject(definition.keys, outputs) if hasattr(definition, "headers"): headers = {} for header_name, header_value in definition.headers.items(): value = header_value if isinstance(value, dict) and "output" in header_value: value = outputs[value["output"]] if isinstance(header_value, dict) and "prefix" in header_value: value = header_value["prefix"] + value headers[header_name] = value request["headers"] = headers return request, outputs