Klasika, FreeBSD to má docela pěkně dokumentované v Handbooku a manuálových stránkách.
man 8 jail
https://man.freebsd.org/cgi/man.cgi?query=jailje tam popis základních parametrů
man 5 jail.conf
https://man.freebsd.org/cgi/man.cgi?query=jail.conftady je popis konfiguračního formátu
Ad API. Jaily se vytváří používají přes C syscally jail, jail_set, jail_attach, jail_get atp. Taky je to v man. stránkách. Nastavení (parametry) jailů se jádru předávají přes C strukturu a zmíněné syscally.
Aktuální konfigurace jailů i s popisem parametrů se dá zjistit také přes sysctl, když spustíte: sysctl -d security.jail
Interaktivní příkazy jail, jls pak také samozřejmě používají ty syscally. Konfigurační soubory patří právě k utilitě jail a používají se i po spuštění systému, kdy se nahazují nastavené jaily.
Koncepty ohledně jailů a vysvětlení parametrů jsou pak ve zmíněném Handbooku.
https://docs.freebsd.org/en/books/handbook/jails/Dole jsou i linky na extra nástroje pro správu jailů jako cbsd, bastille. Ty typicky používají systémové nástroje (jail, zfs, pkg, ifconfig atd.) a umožňují automatizovat vytváření a správu jailů včetně nastavení sítě, datasetů v ZFS, dělat šablony atp., případně integrovat s nějakou další orchestrací (v případě cbsd).
Nicméně nic z toho v základu nutně nepotřebujete, vše se dá nastavit ručně pro pár jailů.