The doc/api is a legacy name, which is confusing in the current use, since all build targets are now APIs.
Today we have:
doc/common: Common configuration and settings between all targets.
doc/main: Main Pybricks documentation at docs.pybricks.com.
doc/ide: Documentation shipped with the Pybricks Code IDE.
Separate the build step and commit the output to the repository. This way the docs can be built on platforms that do not have inkscape, such as readthedocs.
pipenv run make -C doc diagrams
pipenv run make -C doc html