launchctl list doesn't show StartInterval The following is part of my .plist file:

&lt;plist version="1.0"&gt;
&lt;dict&gt;
  &lt;key&gt;Label&lt;/key&gt;
  &lt;string&gt;org.myorg.foo&lt;/string&gt;
  &lt;key&gt;ProgramArguments&lt;/key&gt;
  &lt;array&gt;
    &lt;!-- ... --&gt;
  &lt;/array&gt;
  &lt;key&gt;StartInterval&lt;/key&gt;
  &lt;integer&gt;300&lt;/integer&gt;
&lt;/dict&gt;
&lt;/plist&gt;


Yet when I do a sudo launchctl list org.myorg.foo it prints:

{
    "LimitLoadToSessionType" = "System";
    "Label" = "org.myorg.foo";
    "OnDemand" = true;
    "LastExitStatus" = 0;
    "Program" = "...";
    "ProgramArguments" = (
        ...
    );
};


Where did the StartInterval go?
StartInterval won't get printed with (sudo) launchctl list [label].

Use sudo launchctl print system/[service-name] instead. It will be printed as run interval.

Depending on the domain/service target use 


user/&lt;uid&gt;/[service-name]
login/&lt;asid&gt;/[service-name]
gui/&lt;uid&gt;/[service-name]


instead of system/[service-name]

Examples: 

host:~ user$ sudo launchctl print system/com.apple.collabd.expire | grep interval
    run interval = 600 seconds
host:~ user$ launchctl print gui/501/usr.homebrew.mxcl.autoupdate | grep interval
    run interval = 7200 seconds