import json
import pprint
def pretty_print_api_payload(payload):
"""
Pretty-prints an API payload (assumed to be a JSON string or dictionary).
"""
try:
if isinstance(payload, str):
data = json.loads(payload) # Parse JSON string to Python object
else:
data = payload # Assume it's already a dictionary/list
pp = pprint.PrettyPrinter(indent=4) # Create a PrettyPrinter object
pp.pprint(data) # Print the data with indentation
except json.JSONDecodeError as e:
print(f"Error decoding JSON: {e}")
except Exception as e:
print(f"An error occurred: {e}")
if __name__ == '__main__':
# Example usage:
api_payload_json = '{"name": "John Doe", "age": 30, "city": "New York", "skills": ["Python", "API", "Data Analysis"]}'
pretty_print_api_payload(api_payload_json)
api_payload_dict = {"status": "success", "data": {"id": 123, "message": "Operation completed" }}
pretty_print_api_payload(api_payload_dict)
Add your comment