generated: '2026-08-26' method: searched source: >- PICOS 4.8 Configuration Guide, "Appendix: ZTP API" (https://pica8-fs.atlassian.net/wiki/spaces/Picos48white/pages/1157563048/Appendix+ZTP+API) and the RESTCONF, NETCONF, sFlow and gNMI configuration-command pages in the same space; fetched 2026-08-26 note: >- Pica8 ships no cross-platform developer CLI for the AmpCon REST API - there is no `ampcon` binary and no installable command-line client in any package registry (see packages/pica8-packages.yml). What Pica8 does publish is TWO on-device command surfaces, both real and both documented: the PICOS configuration CLI, and a named shell function library that Pica8 itself calls the "ZTP API". surfaces: - name: PICOS configuration CLI kind: device-cli install: Ships with the PICOS network operating system; there is nothing to install separately. modes: - name: operating mode prompt: '>' note: Reachable before login through the ZTP l2l3_cmd_shell function. - name: configuration mode style: 'Juniper-style hierarchical `set` / `delete` statements with an explicit commit' command_families_documented: - 'set protocols restconf [port | traceoptions flag config|datastore|all disable]' - 'set protocols sflow [agent-id | collector | collector udp-port | collector vrf mgmt-vrf | source-address | sampling-rate ingress|egress | polling-interval | header-len | disable | interface ...]' - 'NETCONF enable/delete statements' - 'gRPC/gNMI enable and listening-port statements' - 'OpenFlow commands in CrossFlow mode' - 'ovs-appctl operational commands (e.g. ovs-appctl hwlog/set-level )' - 'Traceoptions configuration commands' docs: https://pica8-fs.atlassian.net/wiki/spaces/Picos48white/overview - name: PICOS ZTP API kind: shell-function-library location: /usr/bin/ztp-functions.sh on the switch invoked_from: The provisioning script generated by `generate_script` and run during zero-touch provisioning. return_convention: '0 = success, 1 = failed' docs: https://pica8-fs.atlassian.net/wiki/spaces/Picos48white/pages/1157563048/Appendix+ZTP+API version_warning: >- Pica8 warns that several function names changed between releases and that using the wrong name for the installed version raises an error prompt. Functions are annotated with the PICOS versions that support them. functions: - name: global_ztp_config params: ["enable|disable"] description: Enable or disable auto-run of both out-of-band and in-band ZTP at boot. since: 4.8.0E - name: oob_ztp_config params: ["enable|disable"] description: Enable or disable out-of-band ZTP auto-run at boot. since: 4.8.0E unsupported_on: S3410 Series - name: inband_ztp_config params: ["enable|disable"] description: Enable or disable in-band ZTP auto-run at boot. since: 4.8.0E - name: ztp_enable description: Enable ZTP auto-run at boot. deprecated_after: 'Versions before 4.8.0E only; superseded by global_ztp_config.' - name: ztp_disable description: Disable ZTP auto-run at boot. deprecated_after: 'Versions before 4.8.0E only; superseded by global_ztp_config.' - name: add_remote_syslog_server params: [ip-address] description: Add a remote syslog server. - name: remove_remote_syslog_server params: [ip-address] description: Remove a remote syslog server. - name: tftp_get_file params: [remote-file-name, local-file-name, tftp-server-ip] description: Fetch a file from a TFTP server. - name: http_get_file params: [local-file-name, file-url] description: Fetch a file from an HTTP server. since: 4.5.0E - name: get_l2l3_config_file params: [file-name, ip-address] description: Fetch the PICOS configuration file pica_startup.boot from a TFTP or HTTP file server. since: 4.5.0E renamed_from: tftp_get_l2l3_config_file - name: get_ovs_config_file params: [file-name, ip-address] description: Fetch the Open vSwitch configuration database ovs-vswitchd.conf.db from a file server. since: 4.5.0E renamed_from: tftp_get_ovs_config_file unsupported_on: S3410 Series - name: get_picos_startup_file params: [file-name, ip-address] description: Fetch the PICOS startup file picos_start.conf from a file server. since: 4.5.0E renamed_from: tftp_get_picos_config_file - name: get_picos_image params: [file-name, ip-address] description: Fetch a PICOS image from a file server and upgrade the switch. since: 4.5.0E renamed_from: tftp_get_picos_image - name: l2l3_load_config params: [file-name, ip-address] description: Fetch a file of PICOS L2/L3 CLI commands and execute them. - name: picos_start_stop params: ["start|stop|restart|status"] description: Start, stop, restart or query the PICOS service, with status shown on the booting interface. since: 4.6.0E unsupported_on: out-of-band ZTP - name: l2l3_cmd_shell params: [command] description: Run a CLI command in operating mode (>) before logging in to the switch. since: 4.6.0E unsupported_on: out-of-band ZTP - name: append_to_path params: ["path[:path...]"] description: Append one or more absolute paths to the PATH environment variable. since: 4.7.0E unsupported_on: S3410 Series