you wouldn’t necessarily need to touch the raw JSON, you could use nbformat
to grab the output notebooks and insert markdown as needed. E.g.
import nbformat as nbf
ntbk = nbf.read(myntbk.ipynb, nbf.NO_CONVERT)
for cell in ntbk.cells:
if cell.source == "<insert_placeholder>":
cell.source = "# My markdown\n\nGoes here