support incremental batch recording via JSON API