Tidied up ingest framework API