Merge from trunk
authorTony Mack <tmack@cs.princeton.edu>
Tue, 13 Nov 2007 19:41:41 +0000 (19:41 +0000)
committerTony Mack <tmack@cs.princeton.edu>
Tue, 13 Nov 2007 19:41:41 +0000 (19:41 +0000)
Makefile
doc/DocBook.py
doc/DocBookLocal.py
doc/PLCAPI.html
plcsh

index 6eba7ee..6dab495 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -11,7 +11,8 @@
 init := PLC/__init__.py PLC/Methods/__init__.py
 
 # Python modules
-modules := psycopg2
+#modules := psycopg2
+modules := pycurl
 
 # Temporarily until we can kill the Fedora Core 2 build
 curl_vernum := $(shell printf %d 0x$(shell curl-config --vernum))
index 254e99e..3434ce5 100755 (executable)
@@ -15,6 +15,7 @@ import codecs
 
 from PLC.Method import *
 import DocBookLocal
+import groups
 
 # xml.dom.minidom.Text.writexml adds surrounding whitespace to textual
 # data when pretty-printing. Override this behavior.
@@ -103,12 +104,13 @@ class paramElement(Element):
             for subparam in param:
                 itemizedlist.appendChild(paramElement(None, subparam))
 
-api_func_list = DocBookLocal.get_func_list()
-for func in api_func_list:
+
+def get_method_doc(func):
+
     method = func.name
 
     if func.status == "deprecated":
-        continue
+        return
 
     (min_args, max_args, defaults) = func.args()
 
@@ -145,4 +147,53 @@ for func in api_func_list:
     returns.appendChild(paramElement(None, func.returns))
     section.appendChild(returns)
 
-    print section.toprettyxml(encoding = "UTF-8")
+    #print section.toprettyxml(encoding = "UTF-8")
+    return section
+
+
+def get_section(fields, field_list = None):
+    if not field_list:
+       field_list = fields.keys()
+       field_list.sort()
+
+    for field in field_list:
+       value = fields[field]
+       section = Element('section')
+       section.setAttribute('id', field.title())
+       section.appendChild(simpleElement('title', field.title()))
+       # if list of methods, append method docs
+       # else if dict, make a new section group
+        if isinstance(value, dict):
+           section.appendChild(get_section(value))
+       elif isinstance(value, list):
+           methods = DocBookLocal.get_func_list(value)
+           for method in methods:
+               method_doc = get_method_doc(method)
+               section.appendChild(method_doc)               
+
+    return section
+       
+# write full list of methods to Methods.xml
+#api_func_list = DocBookLocal.get_func_list()
+#methods_xml = file('Methods.xml',  'w')
+#for func in api_func_list:
+#    section = get_method_doc(func)
+#    if section:               
+#        methods_xml.write(section)
+#methods_xml.close()
+
+# write methods grouped into interfaces
+interfaces = ['Registry_Interface', 'Management_Interface', 'Slice_Interface']
+for interface in interfaces:
+    interface_file = file(interface+'.xml', 'w')
+    interface_methods = groups.interfaces[interface]
+    section =  get_section(interface_methods, ['public', 'admin'])
+    if section:    
+       interface_file.write(section.toprettyxml(encoding = "UTF-8"))
+    interface_file.close()     
+       
+       
+
+       
+               
+       
index 4a029d2..a01ad6c 100644 (file)
@@ -1,7 +1,8 @@
 
 from PLC.API import PLCAPI
 
-
-def get_func_list():
+def get_func_list(methods = None):
        api = PLCAPI(None)
-       return [api.callable(method) for method in api.methods]
+       if not methods:
+           methods = api.methods
+       return [api.callable(method) for method in methods]
index 27390a9..e69de29 100644 (file)
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
-<HTML
-><HEAD
-><TITLE
->PlanetLab Central API Documentation</TITLE
-><META
-NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD
-><BODY
-CLASS="book"
-BGCOLOR="#FFFFFF"
-TEXT="#000000"
-LINK="#0000FF"
-VLINK="#840084"
-ALINK="#0000FF"
-><DIV
-CLASS="BOOK"
-><A
-NAME="AEN1"
-></A
-><DIV
-CLASS="TITLEPAGE"
-><H1
-CLASS="title"
-><A
-NAME="AEN2"
->PlanetLab Central API Documentation</A
-></H1
-><HR></DIV
-><DIV
-CLASS="TOC"
-><DL
-><DT
-><B
->Table of Contents</B
-></DT
-><DT
->1. <A
-HREF="#Introduction"
->Introduction</A
-></DT
-><DD
-><DL
-><DT
->1.1. <A
-HREF="#Authentication"
->Authentication</A
-></DT
-><DT
->1.2. <A
-HREF="#Roles"
->Roles</A
-></DT
-><DT
->1.3. <A
-HREF="#Filters"
->Filters</A
-></DT
-><DT
->1.4. <A
-HREF="#AEN91"
->PlanetLab shell</A
-></DT
-></DL
-></DD
-><DT
->2. <A
-HREF="#Methods"
->PlanetLab API Methods</A
-></DT
-><DD
-><DL
-><DT
->2.1. <A
-HREF="#AddAddressType"
->AddAddressType</A
-></DT
-><DT
->2.2. <A
-HREF="#AddAddressTypeToAddress"
->AddAddressTypeToAddress</A
-></DT
-><DT
->2.3. <A
-HREF="#AddBootState"
->AddBootState</A
-></DT
-><DT
->2.4. <A
-HREF="#AddConfFile"
->AddConfFile</A
-></DT
-><DT
->2.5. <A
-HREF="#AddConfFileToNodeGroup"
->AddConfFileToNodeGroup</A
-></DT
-><DT
->2.6. <A
-HREF="#AddConfFileToNode"
->AddConfFileToNode</A
-></DT
-><DT
->2.7. <A
-HREF="#AddKeyType"
->AddKeyType</A
-></DT
-><DT
->2.8. <A
-HREF="#AddMessage"
->AddMessage</A
-></DT
-><DT
->2.9. <A
-HREF="#AddNetworkMethod"
->AddNetworkMethod</A
-></DT
-><DT
->2.10. <A
-HREF="#AddNetworkType"
->AddNetworkType</A
-></DT
-><DT
->2.11. <A
-HREF="#AddNodeGroup"
->AddNodeGroup</A
-></DT
-><DT
->2.12. <A
-HREF="#AddNodeNetwork"
->AddNodeNetwork</A
-></DT
-><DT
->2.13. <A
-HREF="#AddNode"
->AddNode</A
-></DT
-><DT
->2.14. <A
-HREF="#AddNodeToNodeGroup"
->AddNodeToNodeGroup</A
-></DT
-><DT
->2.15. <A
-HREF="#AddNodeToPCU"
->AddNodeToPCU</A
-></DT
-><DT
->2.16. <A
-HREF="#AddPCU"
->AddPCU</A
-></DT
-><DT
->2.17. <A
-HREF="#AddPeer"
->AddPeer</A
-></DT
-><DT
->2.18. <A
-HREF="#AddPersonKey"
->AddPersonKey</A
-></DT
-><DT
->2.19. <A
-HREF="#AddPerson"
->AddPerson</A
-></DT
-><DT
->2.20. <A
-HREF="#AddPersonToSite"
->AddPersonToSite</A
-></DT
-><DT
->2.21. <A
-HREF="#AddPersonToSlice"
->AddPersonToSlice</A
-></DT
-><DT
->2.22. <A
-HREF="#AddRole"
->AddRole</A
-></DT
-><DT
->2.23. <A
-HREF="#AddRoleToPerson"
->AddRoleToPerson</A
-></DT
-><DT
->2.24. <A
-HREF="#AddSiteAddress"
->AddSiteAddress</A
-></DT
-><DT
->2.25. <A
-HREF="#AddSite"
->AddSite</A
-></DT
-><DT
->2.26. <A
-HREF="#AddSliceAttribute"
->AddSliceAttribute</A
-></DT
-><DT
->2.27. <A
-HREF="#AddSliceAttributeType"
->AddSliceAttributeType</A
-></DT
-><DT
->2.28. <A
-HREF="#AddSliceInstantiation"
->AddSliceInstantiation</A
-></DT
-><DT
->2.29. <A
-HREF="#AddSlice"
->AddSlice</A
-></DT
-><DT
->2.30. <A
-HREF="#AddSliceToNodes"
->AddSliceToNodes</A
-></DT
-><DT
->2.31. <A
-HREF="#AuthCheck"
->AuthCheck</A
-></DT
-><DT
->2.32. <A
-HREF="#BlacklistKey"
->BlacklistKey</A
-></DT
-><DT
->2.33. <A
-HREF="#BootGetNodeDetails"
->BootGetNodeDetails</A
-></DT
-><DT
->2.34. <A
-HREF="#BootNotifyOwners"
->BootNotifyOwners</A
-></DT
-><DT
->2.35. <A
-HREF="#BootUpdateNode"
->BootUpdateNode</A
-></DT
-><DT
->2.36. <A
-HREF="#DeleteAddress"
->DeleteAddress</A
-></DT
-><DT
->2.37. <A
-HREF="#DeleteAddressTypeFromAddress"
->DeleteAddressTypeFromAddress</A
-></DT
-><DT
->2.38. <A
-HREF="#DeleteAddressType"
->DeleteAddressType</A
-></DT
-><DT
->2.39. <A
-HREF="#DeleteBootState"
->DeleteBootState</A
-></DT
-><DT
->2.40. <A
-HREF="#DeleteConfFileFromNodeGroup"
->DeleteConfFileFromNodeGroup</A
-></DT
-><DT
->2.41. <A
-HREF="#DeleteConfFileFromNode"
->DeleteConfFileFromNode</A
-></DT
-><DT
->2.42. <A
-HREF="#DeleteConfFile"
->DeleteConfFile</A
-></DT
-><DT
->2.43. <A
-HREF="#DeleteKey"
->DeleteKey</A
-></DT
-><DT
->2.44. <A
-HREF="#DeleteKeyType"
->DeleteKeyType</A
-></DT
-><DT
->2.45. <A
-HREF="#DeleteMessage"
->DeleteMessage</A
-></DT
-><DT
->2.46. <A
-HREF="#DeleteNetworkMethod"
->DeleteNetworkMethod</A
-></DT
-><DT
->2.47. <A
-HREF="#DeleteNetworkType"
->DeleteNetworkType</A
-></DT
-><DT
->2.48. <A
-HREF="#DeleteNodeFromNodeGroup"
->DeleteNodeFromNodeGroup</A
-></DT
-><DT
->2.49. <A
-HREF="#DeleteNodeFromPCU"
->DeleteNodeFromPCU</A
-></DT
-><DT
->2.50. <A
-HREF="#DeleteNodeGroup"
->DeleteNodeGroup</A
-></DT
-><DT
->2.51. <A
-HREF="#DeleteNodeNetwork"
->DeleteNodeNetwork</A
-></DT
-><DT
->2.52. <A
-HREF="#DeleteNode"
->DeleteNode</A
-></DT
-><DT
->2.53. <A
-HREF="#DeletePCU"
->DeletePCU</A
-></DT
-><DT
->2.54. <A
-HREF="#DeletePeer"
->DeletePeer</A
-></DT
-><DT
->2.55. <A
-HREF="#DeletePersonFromSite"
->DeletePersonFromSite</A
-></DT
-><DT
->2.56. <A
-HREF="#DeletePersonFromSlice"
->DeletePersonFromSlice</A
-></DT
-><DT
->2.57. <A
-HREF="#DeletePerson"
->DeletePerson</A
-></DT
-><DT
->2.58. <A
-HREF="#DeleteRoleFromPerson"
->DeleteRoleFromPerson</A
-></DT
-><DT
->2.59. <A
-HREF="#DeleteRole"
->DeleteRole</A
-></DT
-><DT
->2.60. <A
-HREF="#DeleteSession"
->DeleteSession</A
-></DT
-><DT
->2.61. <A
-HREF="#DeleteSite"
->DeleteSite</A
-></DT
-><DT
->2.62. <A
-HREF="#DeleteSliceAttribute"
->DeleteSliceAttribute</A
-></DT
-><DT
->2.63. <A
-HREF="#DeleteSliceAttributeType"
->DeleteSliceAttributeType</A
-></DT
-><DT
->2.64. <A
-HREF="#DeleteSliceFromNodes"
->DeleteSliceFromNodes</A
-></DT
-><DT
->2.65. <A
-HREF="#DeleteSliceInstantiation"
->DeleteSliceInstantiation</A
-></DT
-><DT
->2.66. <A
-HREF="#DeleteSlice"
->DeleteSlice</A
-></DT
-><DT
->2.67. <A
-HREF="#GetAddresses"
->GetAddresses</A
-></DT
-><DT
->2.68. <A
-HREF="#GetAddressTypes"
->GetAddressTypes</A
-></DT
-><DT
->2.69. <A
-HREF="#GetBootStates"
->GetBootStates</A
-></DT
-><DT
->2.70. <A
-HREF="#GetConfFiles"
->GetConfFiles</A
-></DT
-><DT
->2.71. <A
-HREF="#GetEvents"
->GetEvents</A
-></DT
-><DT
->2.72. <A
-HREF="#GetKeys"
->GetKeys</A
-></DT
-><DT
->2.73. <A
-HREF="#GetKeyTypes"
->GetKeyTypes</A
-></DT
-><DT
->2.74. <A
-HREF="#GetMessages"
->GetMessages</A
-></DT
-><DT
->2.75. <A
-HREF="#GetNetworkMethods"
->GetNetworkMethods</A
-></DT
-><DT
->2.76. <A
-HREF="#GetNetworkTypes"
->GetNetworkTypes</A
-></DT
-><DT
->2.77. <A
-HREF="#GetNodeGroups"
->GetNodeGroups</A
-></DT
-><DT
->2.78. <A
-HREF="#GetNodeNetworks"
->GetNodeNetworks</A
-></DT
-><DT
->2.79. <A
-HREF="#GetNodes"
->GetNodes</A
-></DT
-><DT
->2.80. <A
-HREF="#GetPCUs"
->GetPCUs</A
-></DT
-><DT
->2.81. <A
-HREF="#GetPeerData"
->GetPeerData</A
-></DT
-><DT
->2.82. <A
-HREF="#GetPeerName"
->GetPeerName</A
-></DT
-><DT
->2.83. <A
-HREF="#GetPeers"
->GetPeers</A
-></DT
-><DT
->2.84. <A
-HREF="#GetPersons"
->GetPersons</A
-></DT
-><DT
->2.85. <A
-HREF="#GetRoles"
->GetRoles</A
-></DT
-><DT
->2.86. <A
-HREF="#GetSession"
->GetSession</A
-></DT
-><DT
->2.87. <A
-HREF="#GetSites"
->GetSites</A
-></DT
-><DT
->2.88. <A
-HREF="#GetSliceAttributes"
->GetSliceAttributes</A
-></DT
-><DT
->2.89. <A
-HREF="#GetSliceAttributeTypes"
->GetSliceAttributeTypes</A
-></DT
-><DT
->2.90. <A
-HREF="#GetSliceInstantiations"
->GetSliceInstantiations</A
-></DT
-><DT
->2.91. <A
-HREF="#GetSlices"
->GetSlices</A
-></DT
-><DT
->2.92. <A
-HREF="#GetSliceTicket"
->GetSliceTicket</A
-></DT
-><DT
->2.93. <A
-HREF="#GetSlivers"
->GetSlivers</A
-></DT
-><DT
->2.94. <A
-HREF="#NotifyPersons"
->NotifyPersons</A
-></DT
-><DT
->2.95. <A
-HREF="#RebootNode"
->RebootNode</A
-></DT
-><DT
->2.96. <A
-HREF="#RefreshPeer"
->RefreshPeer</A
-></DT
-><DT
->2.97. <A
-HREF="#ResetPassword"
->ResetPassword</A
-></DT
-><DT
->2.98. <A
-HREF="#SetPersonPrimarySite"
->SetPersonPrimarySite</A
-></DT
-><DT
->2.99. <A
-HREF="#UpdateAddress"
->UpdateAddress</A
-></DT
-><DT
->2.100. <A
-HREF="#UpdateAddressType"
->UpdateAddressType</A
-></DT
-><DT
->2.101. <A
-HREF="#UpdateConfFile"
->UpdateConfFile</A
-></DT
-><DT
->2.102. <A
-HREF="#UpdateKey"
->UpdateKey</A
-></DT
-><DT
->2.103. <A
-HREF="#UpdateMessage"
->UpdateMessage</A
-></DT
-><DT
->2.104. <A
-HREF="#UpdateNodeGroup"
->UpdateNodeGroup</A
-></DT
-><DT
->2.105. <A
-HREF="#UpdateNodeNetwork"
->UpdateNodeNetwork</A
-></DT
-><DT
->2.106. <A
-HREF="#UpdateNode"
->UpdateNode</A
-></DT
-><DT
->2.107. <A
-HREF="#UpdatePCU"
->UpdatePCU</A
-></DT
-><DT
->2.108. <A
-HREF="#UpdatePeer"
->UpdatePeer</A
-></DT
-><DT
->2.109. <A
-HREF="#UpdatePerson"
->UpdatePerson</A
-></DT
-><DT
->2.110. <A
-HREF="#UpdateSite"
->UpdateSite</A
-></DT
-><DT
->2.111. <A
-HREF="#UpdateSliceAttribute"
->UpdateSliceAttribute</A
-></DT
-><DT
->2.112. <A
-HREF="#UpdateSliceAttributeType"
->UpdateSliceAttributeType</A
-></DT
-><DT
->2.113. <A
-HREF="#UpdateSlice"
->UpdateSlice</A
-></DT
-><DT
->2.114. <A
-HREF="#VerifyPerson"
->VerifyPerson</A
-></DT
-><DT
->2.115. <A
-HREF="#system.listMethods"
->system.listMethods</A
-></DT
-><DT
->2.116. <A
-HREF="#system.methodHelp"
->system.methodHelp</A
-></DT
-><DT
->2.117. <A
-HREF="#system.methodSignature"
->system.methodSignature</A
-></DT
-><DT
->2.118. <A
-HREF="#system.multicall"
->system.multicall</A
-></DT
-></DL
-></DD
-></DL
-></DIV
-><DIV
-CLASS="chapter"
-><HR><H1
-><A
-NAME="Introduction"
-></A
->Chapter 1. Introduction</H1
-><P
->The PlanetLab Central API (PLCAPI) is the interface through
-    which the PlanetLab Central database should be accessed and
-    maintained. The API is used by the website, by nodes, by automated
-    scripts, and by users to access and update information about
-    users, nodes, sites, slices, and other entities maintained by the
-    database.</P
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="Authentication"
->1.1. Authentication</A
-></H2
-><P
->The API should be accessed via XML-RPC over HTTPS. The API
-      supports the standard introspection calls <A
-HREF="#system.listMethods"
->system.listMethods</A
->, <A
-HREF="#system.methodSignature"
->system.methodSignature</A
->,
-      and <A
-HREF="#system.methodHelp"
->system.methodHelp</A
->,
-      and the standard batching call <A
-HREF="#system.multicall"
->system.multicall</A
->. With the
-      exception of these calls, all PLCAPI calls take an
-      authentication structure as their first argument. All
-      authentication structures require the specification of
-      <CODE
-CLASS="parameter"
->AuthMethod</CODE
->. If the documentation for a
-      call does not further specify the authentication structure, then
-      any of (but only) the following authentication structures may be
-      used:</P
-><P
-></P
-><UL
-><LI
-><P
->Session authentication. User sessions are typically
-         valid for 24 hours. Node sessions are valid until the next
-         reboot. Obtain a session key with <A
-HREF="#GetSession"
->GetSession</A
-> using another form of
-         authentication, such as password or GnuPG
-         authentication.</P
-><DIV
-CLASS="informaltable"
-><P
-></P
-><A
-NAME="AEN19"
-></A
-><TABLE
-BORDER="0"
-FRAME="void"
-CLASS="CALSTABLE"
-><COL><COL><COL><TBODY
-><TR
-><TD
->AuthMethod</TD
-><TD
-><TT
-CLASS="literal"
->session</TT
-></TD
-><TD
->&nbsp;</TD
-></TR
-><TR
-><TD
->session</TD
-><TD
->Session key</TD
-><TD
->&nbsp;</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></LI
-><LI
-><P
->Password authentication.</P
-><DIV
-CLASS="informaltable"
-><P
-></P
-><A
-NAME="AEN31"
-></A
-><TABLE
-BORDER="0"
-FRAME="void"
-CLASS="CALSTABLE"
-><COL><COL><COL><TBODY
-><TR
-><TD
->AuthMethod</TD
-><TD
-><TT
-CLASS="literal"
->password</TT
-></TD
-><TD
->&nbsp;</TD
-></TR
-><TR
-><TD
->Username</TD
-><TD
->Username, typically an e-mail address</TD
-><TD
->&nbsp;</TD
-></TR
-><TR
-><TD
->AuthString</TD
-><TD
->Authentication string, typically a password</TD
-><TD
->&nbsp;</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></LI
-><LI
-><P
->GnuPG authentication. Users may upload a GPG public key
-         using <A
-HREF="#AddPersonKey"
->AddPersonKey</A
->. Peer
-         GPG keys should be added with <A
-HREF="#AddPeer"
->AddPeer</A
-> or <A
-HREF="#UpdatePeer"
->UpdatePeer</A
->.
-         </P
-><DIV
-CLASS="informaltable"
-><P
-></P
-><A
-NAME="AEN49"
-></A
-><TABLE
-BORDER="0"
-FRAME="void"
-CLASS="CALSTABLE"
-><COL><COL><COL><TBODY
-><TR
-><TD
->AuthMethod</TD
-><TD
-><TT
-CLASS="literal"
->gpg</TT
-></TD
-><TD
->&nbsp;</TD
-></TR
-><TR
-><TD
->name</TD
-><TD
->Peer or user name</TD
-><TD
->&nbsp;</TD
-></TR
-><TR
-><TD
->signature</TD
-><TD
->GnuPG signature of
-               the <A
-HREF="http://www.w3.org/TR/xml-c14n"
-TARGET="_top"
->canonicalized</A
->
-               <A
-HREF="http://www.xmlrpc.com/spec"
-TARGET="_top"
->XML-RPC</A
->
-               representation of the rest of the arguments to the
-               call.</TD
-><TD
->&nbsp;</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></LI
-><LI
-><P
->Anonymous authentication.</P
-><DIV
-CLASS="informaltable"
-><P
-></P
-><A
-NAME="AEN66"
-></A
-><TABLE
-BORDER="0"
-FRAME="void"
-CLASS="CALSTABLE"
-><COL><COL><COL><TBODY
-><TR
-><TD
->AuthMethod</TD
-><TD
-><TT
-CLASS="literal"
->anonymous</TT
-></TD
-><TD
->&nbsp;</TD
-></TR
-></TBODY
-></TABLE
-><P
-></P
-></DIV
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="Roles"
->1.2. Roles</A
-></H2
-><P
->Some functions may only be called by users with certain
-      roles (see <A
-HREF="#GetRoles"
->GetRoles</A
->), and others
-      may return different information to different callers depending
-      on the role(s) of the caller.</P
-><P
->The <TT
-CLASS="literal"
->node</TT
-> and
-      <TT
-CLASS="literal"
->anonymous</TT
-> roles are pseudo-roles. A function
-      that allows the <TT
-CLASS="literal"
->node</TT
-> role may be called by
-      automated scripts running on a node, such as the Boot and Node
-      Managers. A function that allows the
-      <TT
-CLASS="literal"
->anonymous</TT
-> role may be called by anyone; an
-      API authentication structure must still be specified (see <A
-HREF="#Authentication"
->Section 1.1</A
->).</P
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="Filters"
->1.3. Filters</A
-></H2
-><P
->Most of the <CODE
-CLASS="function"
->Get</CODE
-> functions take a
-      filter argument. Filters may be arrays of integer (and sometimes
-      string) identifiers, or a struct representing a filter on the
-      attributes of the entities being queried. For example,</P
-><PRE
-CLASS="programlisting"
->&#13;# plcsh code fragment (see below)
-GetNodes([1,2,3])
-GetNodes({'node_id': [1,2,3]})
-GetNodes({'node_id': 1}) + GetNodes({'node_id': 2}) + GetNodes({'node_id': 3})
-</PRE
-><P
->Would all be equivalent queries. Attributes that are
-      themselves arrays (such as <TT
-CLASS="literal"
->nodenetwork_ids</TT
->
-      and <TT
-CLASS="literal"
->slice_ids</TT
-> for nodes) cannot be used in
-      filters.</P
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AEN91"
->1.4. PlanetLab shell</A
-></H2
-><P
->A command-line program called <B
-CLASS="command"
->plcsh</B
->
-      simplifies authentication structure handling, and is useful for
-      scripting. This program is distributed as a Linux RPM called
-      PLCAPI and requires Python &#8805;2.4.</P
-><PRE
-CLASS="programlisting"
->&#13;usage: plcsh [options]
-
-options:
-  -f CONFIG, --config=CONFIG
-                        PLC configuration file
-  -h URL, --url=URL     API URL
-  -c CACERT, --cacert=CACERT
-                        API SSL certificate
-  -k INSECURE, --insecure=INSECURE
-                        Do not check SSL certificate
-  -m METHOD, --method=METHOD
-                        API authentication method
-  -s SESSION, --session=SESSION
-                        API session key
-  -u USER, --user=USER  API user name
-  -p PASSWORD, --password=PASSWORD
-                        API password
-  -r ROLE, --role=ROLE  API role
-  -x, --xmlrpc          Use XML-RPC interface
-  --help                show this help message and exit
-      </PRE
-><P
->Specify at least the API URL and your user name:</P
-><PRE
-CLASS="programlisting"
->&#13;plcsh --url https://www.planet-lab.org/PLCAPI/ -u user@site.edu
-      </PRE
-><P
->You will be presented with a prompt. From here, you can
-      invoke API calls and omit the authentication structure, as it will
-      be filled in automatically.</P
-><PRE
-CLASS="programlisting"
->&#13;user@site.edu connected using password authentication
-Type "system.listMethods()" or "help(method)" for more information.
-[user@site.edu]&#62;&#62;&#62; AuthCheck()
-1
-[user@site.edu]&#62;&#62;&#62; GetNodes([121], ['node_id', 'hostname'])
-[{'node_id': 121, 'hostname': 'planetlab-1.cs.princeton.edu'}]
-      </PRE
-><P
->As this program is actually a Python interpreter, you may
-      create variables, execute for loops, import other packages, etc.,
-      directly on the command line as you would using the regular Python
-      shell.</P
-><P
->To use <B
-CLASS="command"
->plcsh</B
-> programmatically, import
-      the <CODE
-CLASS="function"
->PLC.Shell</CODE
-> module:</P
-><PRE
-CLASS="programlisting"
->&#13;#!/usr/bin/python
-
-import sys
-
-# Default location that the PLCAPI RPM installs the PLC class
-sys.path.append('/usr/share/plc_api')
-
-# Initialize shell environment. Shell() will define all PLCAPI methods
-# in the specified namespace (specifying globals() will define them
-# globally).
-from PLC.Shell import Shell
-plc = Shell(globals(),
-            url = "https://www.planet-lab.org/PLCAPI/",
-            user = "user@site.edu",
-            password = "password")
-
-# Both are equivalent
-nodes = GetNodes([121], ['node_id', 'hostname'])
-nodes = plc.GetNodes([121], ['node_id', 'hostname'])
-      </PRE
-></DIV
-></DIV
-><DIV
-CLASS="chapter"
-><HR><H1
-><A
-NAME="Methods"
-></A
->Chapter 2. PlanetLab API Methods</H1
-><P
-></P
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddAddressType"
->2.1. AddAddressType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN111"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddAddressType (auth, address_type_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN114"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new address type. Fields specified in address_type_fields
-are used.</P
-><P
->Returns the new address_type_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN118"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Address type                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Address type description                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New address_type_id (&#62; 0) if successful                 </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddAddressTypeToAddress"
->2.2. AddAddressTypeToAddress</A
-></H2
-><P
->Prototype:<A
-NAME="AEN146"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddAddressTypeToAddress (auth, address_type_id_or_name, address_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN149"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds an address type to the specified address.</P
-><P
->PIs may only update addresses of their own sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN154"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Address type                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int, Address identifier                      </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddBootState"
->2.3. AddBootState</A
-></H2
-><P
->Prototype:<A
-NAME="AEN183"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddBootState (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN186"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new node boot state.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN190"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Boot state                   </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddConfFile"
->2.4. AddConfFile</A
-></H2
-><P
->Prototype:<A
-NAME="AEN211"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddConfFile (auth, conf_file_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN214"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new node configuration file. Any fields specified in
-conf_file_fields are used, otherwise defaults are used.</P
-><P
->Returns the new conf_file_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN218"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_owner</CODE
->
-: string, chown(1) owner                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postinstall_cmd</CODE
->
-: string, Shell command to execute after installing                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->error_cmd</CODE
->
-: string, Shell command to execute if any error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->preinstall_cmd</CODE
->
-: string, Shell command to execute prior to installing                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dest</CODE
->
-: string, Absolute path where file should be installed                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ignore_cmd_errors</CODE
->
-: boolean, Install file anyway even if an error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Configuration file is active                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_permissions</CODE
->
-: string, chmod(1) permissions                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->source</CODE
->
-: string, Relative path on the boot server where file can be downloaded                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->always_update</CODE
->
-: boolean, Always attempt to install file even if unchanged                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_group</CODE
->
-: string, chgrp(1) owner                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New conf_file_id (&#62; 0) if successful                    </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddConfFileToNodeGroup"
->2.5. AddConfFileToNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN273"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddConfFileToNodeGroup (auth, conf_file_id, nodegroup_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN276"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a configuration file to the specified node group. If the node
-group is already linked to the configuration file, no errors are
-returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN280"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddConfFileToNode"
->2.6. AddConfFileToNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN309"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddConfFileToNode (auth, conf_file_id, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN312"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a configuration file to the specified node. If the node is
-already linked to the configuration file, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN316"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddKeyType"
->2.7. AddKeyType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN345"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddKeyType (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN348"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new key type.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN352"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Key type                     </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddMessage"
->2.8. AddMessage</A
-></H2
-><P
->Prototype:<A
-NAME="AEN373"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddMessage (auth, message_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN376"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new message template. Any values specified in
-message_fields are used, otherwise defaults are used.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN380"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Message is enabled                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string, Message identifier                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->template</CODE
->
-: string, Message template                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->subject</CODE
->
-: string, Message summary                                      </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNetworkMethod"
->2.9. AddNetworkMethod</A
-></H2
-><P
->Prototype:<A
-NAME="AEN414"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNetworkMethod (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN417"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new network method.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN421"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Network method                       </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNetworkType"
->2.10. AddNetworkType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN442"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNetworkType (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN445"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new network type.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN449"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Network type                 </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNodeGroup"
->2.11. AddNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN470"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNodeGroup (auth, nodegroup_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN473"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new node group. Any values specified in nodegroup_fields
-are used, otherwise defaults are used.</P
-><P
->Returns the new nodegroup_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN477"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Node group name                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Node group description                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New nodegroup_id (&#62; 0) if successful                    </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNodeNetwork"
->2.12. AddNodeNetwork</A
-></H2
-><P
->Prototype:<A
-NAME="AEN505"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNodeNetwork (auth, node_id_or_hostname, nodenetwork_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN508"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new network for a node. Any values specified in
-nodenetwork_fields are used, otherwise defaults are
-used. Acceptable values for method may be retrieved via
-GetNetworkMethods. Acceptable values for type may be retrieved via
-GetNetworkTypes.</P
-><P
->If type is static, ip, gateway, network, broadcast, netmask, and
-dns1 must all be specified in nodenetwork_fields. If type is dhcp,
-these parameters, even if specified, are ignored.</P
-><P
->PIs and techs may only add networks to their own nodes. Admins may
-add networks to any node.</P
-><P
->Returns the new nodenetwork_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN514"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodenetwork_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean, Is the primary interface for this node                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, (Optional) Hostname                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int, Bandwidth limit                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, IP address                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string, Address type (e.g., 'ipv4')                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New nodenetwork_id (&#62; 0) if successful                  </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNode"
->2.13. AddNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN583"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNode (auth, site_id_or_login_base, node_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN586"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new node. Any values specified in node_fields are used,
-otherwise defaults are used.</P
-><P
->PIs and techs may only add nodes to their own sites. Admins may
-add nodes to any site.</P
-><P
->Returns the new node_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN591"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string, Boot state                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, Make and model of the actual machine                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->version</CODE
->
-: string, Apparent Boot CD version                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, Fully qualified hostname                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New node_id (&#62; 0) if successful                 </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNodeToNodeGroup"
->2.14. AddNodeToNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN633"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNodeToNodeGroup (auth, node_id_or_hostname, nodegroup_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN636"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Add a node to the specified node group. If the node is
-already a member of the nodegroup, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN640"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddNodeToPCU"
->2.15. AddNodeToPCU</A
-></H2
-><P
->Prototype:<A
-NAME="AEN674"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddNodeToPCU (auth, node_id_or_hostname, pcu_id, port)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN677"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a node to a port on a PCU. Faults if the node has already
-been added to the PCU or if the port is already in use.</P
-><P
->Non-admins may only update PCUs at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN682"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int, PCU identifier                  </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->port</CODE
->
-: int, PCU port number                 </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPCU"
->2.16. AddPCU</A
-></H2
-><P
->Prototype:<A
-NAME="AEN714"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPCU (auth, site_id_or_login_base, pcu_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN717"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new power control unit (PCU) to the specified site. Any
-fields specified in pcu_fields are used, otherwise defaults are
-used.</P
-><P
->PIs and technical contacts may only add PCUs to their own sites.</P
-><P
->Returns the new pcu_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN722"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->username</CODE
->
-: string, PCU username                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->protocol</CODE
->
-: string, PCU protocol, e.g. ssh, https, telnet                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, PCU IP address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->notes</CODE
->
-: string, Miscellaneous notes                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, PCU hostname                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, PCU model string                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string, PCU username                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New pcu_id (&#62; 0) if successful                  </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPeer"
->2.17. AddPeer</A
-></H2
-><P
->Prototype:<A
-NAME="AEN773"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPeer (auth, peer_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN776"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new peer.</P
-><P
->Returns the new peer_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN780"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Peer GPG public key                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->cacert</CODE
->
-: string, Peer SSL public certificate                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peername</CODE
->
-: string, Peer name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_url</CODE
->
-: string, Peer API URL                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New peer_id (&#62; 0) if successful                 </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPersonKey"
->2.18. AddPersonKey</A
-></H2
-><P
->Prototype:<A
-NAME="AEN814"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPersonKey (auth, person_id_or_email, key_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN817"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new key to the specified account.</P
-><P
->Non-admins can only modify their own keys.</P
-><P
->Returns the new key_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN822"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_type</CODE
->
-: string, Key type                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Key value                                    </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New key_id (&#62; 0) if successful                  </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPerson"
->2.19. AddPerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN858"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPerson (auth, person_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN861"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new account. Any fields specified in person_fields are
-used, otherwise defaults are used.</P
-><P
->Accounts are disabled by default. To enable an account, use
-UpdatePerson().</P
-><P
->Returns the new person_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN866"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bio</CODE
->
-: string, Biography                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->first_name</CODE
->
-: string, Given name                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_name</CODE
->
-: string, Surname                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->title</CODE
->
-: string, Title                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, Home page                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->phone</CODE
->
-: string, Telephone number                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string, Account password in crypt() form                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->email</CODE
->
-: string, Primary e-mail address                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New person_id (&#62; 0) if successful                       </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPersonToSite"
->2.20. AddPersonToSite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN912"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPersonToSite (auth, person_id_or_email, site_id_or_login_base)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN915"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds the specified person to the specified site. If the person is
-already a member of the site, no errors are returned. Does not
-change the person's primary site.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN919"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddPersonToSlice"
->2.21. AddPersonToSlice</A
-></H2
-><P
->Prototype:<A
-NAME="AEN953"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddPersonToSlice (auth, person_id_or_email, slice_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN956"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds the specified person to the specified slice. If the person is
-already a member of the slice, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN960"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddRole"
->2.22. AddRole</A
-></H2
-><P
->Prototype:<A
-NAME="AEN994"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddRole (auth, role_id, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN997"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new role.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1001"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->role_id</CODE
->
-: int, Role identifier                 </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Role                 </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddRoleToPerson"
->2.23. AddRoleToPerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1025"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddRoleToPerson (auth, role_id_or_name, person_id_or_email)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1028"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Grants the specified role to the person.</P
-><P
->PIs can only grant the tech and user roles to users and techs at
-their sites. Admins can grant any role to any user.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1033"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->role_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Role identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Role                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSiteAddress"
->2.24. AddSiteAddress</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1067"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSiteAddress (auth, site_id_or_login_base, address_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1070"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new address to a site. Fields specified in
-address_fields are used; some are not optional.</P
-><P
->PIs may only add addresses to their own sites.</P
-><P
->Returns the new address_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1075"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->city</CODE
->
-: string, City                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->country</CODE
->
-: string, Country                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line3</CODE
->
-: string, Address line 3                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line2</CODE
->
-: string, Address line 2                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line1</CODE
->
-: string, Address line 1                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->state</CODE
->
-: string, State or province                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postalcode</CODE
->
-: string, Postal code                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New address_id (&#62; 0) if successful                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSite"
->2.25. AddSite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1126"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSite (auth, site_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1129"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new site, and creates a node group for that site. Any
-fields specified in site_fields are used, otherwise defaults are
-used.</P
-><P
->Returns the new site_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1133"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Full site name                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL of a page that describes the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Has been enabled                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->longitude</CODE
->
-: double, Decimal longitude of the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->latitude</CODE
->
-: double, Decimal latitude of the site                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slices</CODE
->
-: int, Maximum number of slices that the site is able to create                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->login_base</CODE
->
-: string, Site slice prefix                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slivers</CODE
->
-: int, Maximum number of slivers that the site is able to create                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_public</CODE
->
-: boolean, Publicly viewable site                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->abbreviated_name</CODE
->
-: string, Abbreviated site name                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New site_id (&#62; 0) if successful                 </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSliceAttribute"
->2.26. AddSliceAttribute</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1185"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSliceAttribute (auth, slice_id_or_name, attribute_type_id_or_name, value, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1188"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Sets the specified attribute of the slice (or sliver, if
-node_id_or_hostname is specified) to the specified value.</P
-><P
->Attributes may require the caller to have a particular role in
-order to be set or changed. Users may only set attributes of
-slices or slivers of which they are members. PIs may only set
-attributes of slices or slivers at their sites, or of which they
-are members. Admins may set attributes of any slice or sliver.</P
-><P
->Returns the new slice_attribute_id (&#62; 0) if successful, faults
-otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1193"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice attribute type name                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Slice attribute type name                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, Slice attribute value                        </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New slice_attribute_id (&#62; 0) if successful                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSliceAttributeType"
->2.27. AddSliceAttributeType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1238"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSliceAttributeType (auth, attribute_type_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1241"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new type of slice attribute. Any fields specified in
-attribute_type_fields are used, otherwise defaults are used.</P
-><P
->Returns the new attribute_type_id (&#62; 0) if successful, faults
-otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1245"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int, Minimum (least powerful) role that can set or change this attribute                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice attribute type name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice attribute type description                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New attribute_id (&#62; 0) if successful                    </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSliceInstantiation"
->2.28. AddSliceInstantiation</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1276"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSliceInstantiation (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1279"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new slice instantiation state.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1283"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice instantiation state                    </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSlice"
->2.29. AddSlice</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1304"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSlice (auth, slice_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1307"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds a new slice. Any fields specified in slice_fields are used,
-otherwise defaults are used.</P
-><P
->Valid slice names are lowercase and begin with the login_base
-(slice prefix) of a valid site, followed by a single
-underscore. Thereafter, only letters, numbers, or additional
-underscores may be used.</P
-><P
->PIs may only add slices associated with their own sites (i.e.,
-slice prefixes must always be the login_base of one of their
-sites).</P
-><P
->Returns the new slice_id (&#62; 0) if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1313"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL further describing this slice                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_nodes</CODE
->
-: int, Maximum number of nodes that can be assigned to this slice                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string, Slice instantiation state                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice name                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice description                                    </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, New slice_id (&#62; 0) if successful                        </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AddSliceToNodes"
->2.30. AddSliceToNodes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1350"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AddSliceToNodes (auth, slice_id_or_name, node_id_or_hostname_list)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1353"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Adds the specified slice to the specified nodes. Nodes may be
-either local or foreign nodes.</P
-><P
->If the slice is already associated with a node, no errors are
-returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1358"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname_list</CODE
->
-: array of int or string                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="AuthCheck"
->2.31. AuthCheck</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1392"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->AuthCheck (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1395"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns 1 if the user or node authenticated successfully, faults
-otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1398"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="BlacklistKey"
->2.32. BlacklistKey</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1416"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->BlacklistKey (auth, key_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1419"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Blacklists a key, disassociating it and all others identical to it
-from all accounts and preventing it from ever being added again.</P
-><P
->WARNING: Identical keys associated with other accounts with also
-be blacklisted.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1424"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_id</CODE
->
-: int, Key identifier                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="BootGetNodeDetails"
->2.33. BootGetNodeDetails</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1445"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->BootGetNodeDetails (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1448"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a set of details about the calling node, including a new
-node session value.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1451"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use, always 'hmac'                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, HMAC of node key and method call                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string, Boot state                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, Make and model of the actual machine                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, Fully qualified hostname                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->networks</CODE
->
-: array of struct                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean, Is the primary interface for this node                                                      </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, IP address                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                                     </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, (Optional) Hostname                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                                        </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int, Node interface identifier                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node associated with this interface                                                     </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int, Bandwidth limit                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string, Address type (e.g., 'ipv4')                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->session</CODE
->
-: string, Session key                                  </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="BootNotifyOwners"
->2.34. BootNotifyOwners</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1537"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->BootNotifyOwners (auth, message_id, include_pis, include_techs, include_support)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1540"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Notify the owners of the node, and/or support about an event that
-happened on the machine.</P
-><P
->Returns 1 if successful.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1544"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use, always 'hmac'                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, HMAC of node key and method call                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string, Message identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->include_pis</CODE
->
-: int, Notify PIs                      </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->include_techs</CODE
->
-: int, Notify technical contacts                       </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->include_support</CODE
->
-: int, Notify support                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="BootUpdateNode"
->2.35. BootUpdateNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1580"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->BootUpdateNode (auth, node_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1583"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Allows the calling node to update its own record. Only the primary
-network can be updated, and the node IP cannot be changed.</P
-><P
->Returns 1 if updated successfully.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1587"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use, always 'hmac'                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, HMAC of node key and method call                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string, Boot state                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->primary_network</CODE
->
-: struct                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                                     </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ssh_host_key</CODE
->
-: string, Last known SSH host key                                      </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteAddress"
->2.36. DeleteAddress</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1649"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteAddress (auth, address_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1652"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes an address.</P
-><P
->PIs may only delete addresses from their own sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1657"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int, Address identifier                      </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteAddressTypeFromAddress"
->2.37. DeleteAddressTypeFromAddress</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1678"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteAddressTypeFromAddress (auth, address_type_id_or_name, address_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1681"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes an address type from the specified address.</P
-><P
->PIs may only update addresses of their own sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1686"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Address type                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int, Address identifier                      </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteAddressType"
->2.38. DeleteAddressType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1715"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteAddressType (auth, address_type_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1718"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes an address type.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1722"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Address type                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteBootState"
->2.39. DeleteBootState</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1748"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteBootState (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1751"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a node boot state.</P
-><P
->WARNING: This will cause the deletion of all nodes in this boot
-state.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1756"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Boot state                   </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteConfFileFromNodeGroup"
->2.40. DeleteConfFileFromNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1777"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteConfFileFromNodeGroup (auth, conf_file_id, nodegroup_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1780"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a configuration file from the specified nodegroup. If the nodegroup
-is not linked to the configuration file, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1784"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteConfFileFromNode"
->2.41. DeleteConfFileFromNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1813"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteConfFileFromNode (auth, conf_file_id, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1816"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a configuration file from the specified node. If the node
-is not linked to the configuration file, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1820"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteConfFile"
->2.42. DeleteConfFile</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1849"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteConfFile (auth, conf_file_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1852"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about node
-configuration files. If conf_file_ids is specified, only the
-specified configuration files will be queried.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1855"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteKey"
->2.43. DeleteKey</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1876"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteKey (auth, key_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1879"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a key.</P
-><P
->Non-admins may only delete their own keys.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1884"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_id</CODE
->
-: int, Key identifier                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteKeyType"
->2.44. DeleteKeyType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1905"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteKeyType (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1908"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a key type.</P
-><P
->WARNING: This will cause the deletion of all keys of this type.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1913"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Key type                     </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteMessage"
->2.45. DeleteMessage</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1934"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteMessage (auth, message_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1937"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a message template.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1941"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string, Message identifier                   </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNetworkMethod"
->2.46. DeleteNetworkMethod</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1962"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNetworkMethod (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1965"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a network method.</P
-><P
->WARNING: This will cause the deletion of all network interfaces
-that use this method.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1970"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Network method                       </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNetworkType"
->2.47. DeleteNetworkType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN1991"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNetworkType (auth, name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN1994"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a network type.</P
-><P
->WARNING: This will cause the deletion of all network interfaces
-that use this type.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN1999"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Network type                 </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNodeFromNodeGroup"
->2.48. DeleteNodeFromNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2020"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNodeFromNodeGroup (auth, node_id_or_hostname, nodegroup_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2023"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Removes a node from the specified node group.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2027"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNodeFromPCU"
->2.49. DeleteNodeFromPCU</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2061"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNodeFromPCU (auth, node_id_or_hostname, pcu_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2064"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a node from a PCU.</P
-><P
->Non-admins may only update PCUs at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2069"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int, PCU identifier                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNodeGroup"
->2.50. DeleteNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2098"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNodeGroup (auth, node_group_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2101"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Delete an existing Node Group.</P
-><P
->ins may delete any node group</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2106"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_group_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNodeNetwork"
->2.51. DeleteNodeNetwork</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2132"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNodeNetwork (auth, nodenetwork_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2135"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes an existing node network interface.</P
-><P
->Admins may delete any node network. PIs and techs may only delete
-node network interfaces associated with nodes at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2140"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int, Node interface identifier                       </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteNode"
->2.52. DeleteNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2161"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteNode (auth, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2164"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Mark an existing node as deleted.</P
-><P
->PIs and techs may only delete nodes at their own sites. ins may
-delete nodes at any site.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2169"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeletePCU"
->2.53. DeletePCU</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2195"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeletePCU (auth, pcu_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2198"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a PCU.</P
-><P
->Non-admins may only delete PCUs at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2203"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int, PCU identifier                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeletePeer"
->2.54. DeletePeer</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2224"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeletePeer (auth, peer_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2227"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Mark an existing peer as deleted. All entities (e.g., slices,
-keys, nodes, etc.) for which this peer is authoritative will also
-be deleted or marked as deleted.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2231"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Peer name                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeletePersonFromSite"
->2.55. DeletePersonFromSite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2257"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeletePersonFromSite (auth, person_id_or_email, site_id_or_login_base)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2260"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Removes the specified person from the specified site. If the
-person is not a member of the specified site, no error is
-returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2264"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeletePersonFromSlice"
->2.56. DeletePersonFromSlice</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2298"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeletePersonFromSlice (auth, person_id_or_email, slice_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2301"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified person from the specified slice. If the person is
-not a member of the slice, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2305"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeletePerson"
->2.57. DeletePerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2339"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeletePerson (auth, person_id_or_email)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2342"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Mark an existing account as deleted.</P
-><P
->Users and techs can only delete themselves. PIs can only delete
-themselves and other non-PIs at their sites. ins can delete
-anyone.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2347"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteRoleFromPerson"
->2.58. DeleteRoleFromPerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2373"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteRoleFromPerson (auth, role_id_or_name, person_id_or_email)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2376"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified role from the person.</P
-><P
->PIs can only revoke the tech and user roles from users and techs
-at their sites. ins can revoke any role from any user.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2381"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->role_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Role identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Role                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteRole"
->2.59. DeleteRole</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2415"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteRole (auth, role_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2418"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a role.</P
-><P
->WARNING: This will remove the specified role from all accounts
-that possess it, and from all node and slice attributes that refer
-to it.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2423"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->role_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Role identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Role                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSession"
->2.60. DeleteSession</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2449"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSession (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2452"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Invalidates the current session.</P
-><P
->Returns 1 if successful.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2456"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->session</CODE
->
-: string, Session key                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use, always 'session'                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSite"
->2.61. DeleteSite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2477"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSite (auth, site_id_or_login_base)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2480"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Mark an existing site as deleted. The accounts of people who are
-not members of at least one other non-deleted site will also be
-marked as deleted. Nodes, PCUs, and slices associated with the
-site will be deleted.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2484"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSliceAttribute"
->2.62. DeleteSliceAttribute</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2510"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSliceAttribute (auth, slice_attribute_id)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2513"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified slice or sliver attribute.</P
-><P
->Attributes may require the caller to have a particular role in
-order to be deleted. Users may only delete attributes of
-slices or slivers of which they are members. PIs may only delete
-attributes of slices or slivers at their sites, or of which they
-are members. Admins may delete attributes of any slice or sliver.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2518"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_attribute_id</CODE
->
-: int, Slice attribute identifier                      </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSliceAttributeType"
->2.63. DeleteSliceAttributeType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2539"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSliceAttributeType (auth, attribute_type_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2542"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified slice attribute.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2546"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Slice attribute type name                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSliceFromNodes"
->2.64. DeleteSliceFromNodes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2572"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSliceFromNodes (auth, slice_id_or_name, node_id_or_hostname_list)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2575"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified slice from the specified nodes. If the slice is
-not associated with a node, no errors are returned.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2579"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname_list</CODE
->
-: array of int or string                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSliceInstantiation"
->2.65. DeleteSliceInstantiation</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2613"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSliceInstantiation (auth, instantiation)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2616"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes a slice instantiation state.</P
-><P
->WARNING: This will cause the deletion of all slices of this instantiation.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2621"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string, Slice instantiation state                    </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="DeleteSlice"
->2.66. DeleteSlice</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2642"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->DeleteSlice (auth, slice_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2645"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Deletes the specified slice.</P
-><P
->Users may only delete slices of which they are members. PIs may
-delete any of the slices at their sites, or any slices of which
-they are members. Admins may delete any slice.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2650"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetAddresses"
->2.67. GetAddresses</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2676"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetAddresses (auth, address_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2679"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about addresses. If
-address_filter is specified and is an array of address
-identifiers, or a struct of address attributes, only addresses
-matching the filter will be returned. If return_fields is
-specified, only the specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2682"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, Address identifier                                 </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->city</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, City                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, City                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address identifier                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Address identifier                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->country</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Country                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Country                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->line3</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address line 3                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Address line 3                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->line2</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address line 2                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Address line 2                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->line1</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address line 1                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Address line 1                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->state</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, State or province                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, State or province                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->postalcode</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Postal code                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Postal code                                                                     </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->city</CODE
->
-: string, City                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int, Address identifier                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->country</CODE
->
-: string, Country                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line3</CODE
->
-: string, Address line 3                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line2</CODE
->
-: string, Address line 2                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line1</CODE
->
-: string, Address line 1                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->address_type_ids</CODE
->
-: array, Address type identifiers                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->state</CODE
->
-: string, State or province                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postalcode</CODE
->
-: string, Postal code                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->address_types</CODE
->
-: array, Address types                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                                   </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetAddressTypes"
->2.68. GetAddressTypes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2816"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetAddressTypes (auth, address_type_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2819"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about address
-types. If address_type_filter is specified and is an array of
-address type identifiers, or a struct of address type attributes,
-only address types matching the filter will be returned. If
-return_fields is specified, only the specified details will be
-returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2822"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Address type                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address type                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Address type                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->address_type_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Address type identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address type description                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Address type description                                                                        </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Address type                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->address_type_id</CODE
->
-: int, Address type identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Address type description                                     </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetBootStates"
->2.69. GetBootStates</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2894"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetBootStates (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2897"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of all valid node boot states.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2900"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Boot state                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetConfFiles"
->2.70. GetConfFiles</A
-></H2
-><P
->Prototype:<A
-NAME="AEN2918"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetConfFiles (auth, conf_file_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN2921"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about configuration
-files. If conf_file_filter is specified and is an array of
-configuration file identifiers, or a struct of configuration file
-attributes, only configuration files matching the filter will be
-returned. If return_fields is specified, only the specified
-details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN2924"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, Configuration file identifier                                      </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_owner</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, chown(1) owner                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, chown(1) owner                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->postinstall_cmd</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Shell command to execute after installing                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Shell command to execute after installing                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->error_cmd</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Shell command to execute if any error occurs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Shell command to execute if any error occurs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->preinstall_cmd</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Shell command to execute prior to installing                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Shell command to execute prior to installing                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, List of nodes linked to this file                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, List of nodes linked to this file                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dest</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Absolute path where file should be installed                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Absolute path where file should be installed                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ignore_cmd_errors</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Install file anyway even if an error occurs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of boolean, Install file anyway even if an error occurs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Configuration file is active                                                                    </P
-></LI
-><LI
-><P
->&#13;array of boolean, Configuration file is active                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Configuration file identifier                                                                       </P
-></LI
-><LI
-><P
->&#13;array of int, Configuration file identifier                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_permissions</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, chmod(1) permissions                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, chmod(1) permissions                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->source</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Relative path on the boot server where file can be downloaded                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, Relative path on the boot server where file can be downloaded                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodegroup_ids</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, List of node groups linked to this file                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, List of node groups linked to this file                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->always_update</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Always attempt to install file even if unchanged                                                                        </P
-></LI
-><LI
-><P
->&#13;array of boolean, Always attempt to install file even if unchanged                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_group</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, chgrp(1) owner                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, chgrp(1) owner                                                                  </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_owner</CODE
->
-: string, chown(1) owner                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postinstall_cmd</CODE
->
-: string, Shell command to execute after installing                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->error_cmd</CODE
->
-: string, Shell command to execute if any error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->preinstall_cmd</CODE
->
-: string, Shell command to execute prior to installing                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: int, List of nodes linked to this file                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dest</CODE
->
-: string, Absolute path where file should be installed                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ignore_cmd_errors</CODE
->
-: boolean, Install file anyway even if an error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Configuration file is active                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_permissions</CODE
->
-: string, chmod(1) permissions                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->source</CODE
->
-: string, Relative path on the boot server where file can be downloaded                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->nodegroup_ids</CODE
->
-: int, List of node groups linked to this file                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->always_update</CODE
->
-: boolean, Always attempt to install file even if unchanged                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_group</CODE
->
-: string, chgrp(1) owner                                       </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetEvents"
->2.71. GetEvents</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3112"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetEvents (auth, event_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3115"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about events and
-faults. If event_filter is specified and is an array of event
-identifiers, or a struct of event attributes, only events matching
-the filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3118"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->event_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, Event identifier                                   </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->fault_code</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Event fault code                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Event fault code                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->event_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Event identifier                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Event identifier                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->object_type</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, What type of object is this event affecting                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, What type of object is this event affecting                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Identifier of node responsible for event, if any                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Identifier of node responsible for event, if any                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->call</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Call responsible for this event, including paramters                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Call responsible for this event, including paramters                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->time</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time that the event took place, in seconds since UNIX epoch                                                                        </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time that the event took place, in seconds since UNIX epoch                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Identifier of person responsible for event, if any                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Identifier of person responsible for event, if any                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->message</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, High level description of this event                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, High level description of this event                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->runtime</CODE
->
-: double or array of double                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;double, Runtime of event                                                                 </P
-></LI
-><LI
-><P
->&#13;array of double, Runtime of event                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->call_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Call responsible for this event                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Call responsible for this event                                                                 </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->fault_code</CODE
->
-: int, Event fault code                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->event_id</CODE
->
-: int, Event identifier                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->object_type</CODE
->
-: string, What type of object is this event affecting                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->object_ids</CODE
->
-: array, IDs of objects affected by this event                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Identifier of node responsible for event, if any                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->call</CODE
->
-: string, Call responsible for this event, including paramters                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->time</CODE
->
-: int, Date and time that the event took place, in seconds since UNIX epoch                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int, Identifier of person responsible for event, if any                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->message</CODE
->
-: string, High level description of this event                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->runtime</CODE
->
-: double, Runtime of event                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->call_name</CODE
->
-: string, Call responsible for this event                                      </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetKeys"
->2.72. GetKeys</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3268"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetKeys (auth, key_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3271"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about keys. If
-key_filter is specified and is an array of key identifiers, or a
-struct of key attributes, only keys matching the filter will be
-returned. If return_fields is specified, only the specified
-details will be returned.</P
-><P
->Admin may query all keys. Non-admins may only query their own
-keys.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3275"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int                                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Key identifier                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_key_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign key identifier at peer                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign key identifier at peer                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->key_type</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Key type                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Key type                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Key value                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Key value                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User to which this key belongs                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, User to which this key belongs                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->key_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Key identifier                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Key identifier                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this key belongs                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this key belongs                                                                     </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer to which this key belongs                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_type</CODE
->
-: string, Key type                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Key value                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int, User to which this key belongs                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_id</CODE
->
-: int, Key identifier                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_key_id</CODE
->
-: int, Foreign key identifier at peer                                  </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetKeyTypes"
->2.73. GetKeyTypes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3378"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetKeyTypes (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3381"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of all valid key types.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3384"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Key type                        </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetMessages"
->2.74. GetMessages</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3402"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetMessages (auth, message_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3405"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about message
-templates. If message template_filter is specified and is an array
-of message template identifiers, or a struct of message template
-attributes, only message templates matching the filter will be
-returned. If return_fields is specified, only the specified
-details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3408"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_filter</CODE
->
-: array of string or struct                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Message identifier                                      </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Message is enabled                                                                      </P
-></LI
-><LI
-><P
->&#13;array of boolean, Message is enabled                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Message identifier                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Message identifier                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->template</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Message template                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Message template                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->subject</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Message summary                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Message summary                                                                 </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Message is enabled                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string, Message identifier                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->template</CODE
->
-: string, Message template                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->subject</CODE
->
-: string, Message summary                                      </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetNetworkMethods"
->2.75. GetNetworkMethods</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3486"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetNetworkMethods (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3489"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a list of all valid network methods.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3492"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Network method                  </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetNetworkTypes"
->2.76. GetNetworkTypes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3510"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetNetworkTypes (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3513"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a list of all valid network types.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3516"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Network type                    </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetNodeGroups"
->2.77. GetNodeGroups</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3534"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetNodeGroups (auth, nodegroup_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3537"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about node groups.
-If nodegroup_filter is specified and is an array of node group
-identifiers or names, or a struct of node group attributes, only
-node groups matching the filter will be returned. If return_fields
-is specified, only the specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3540"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node, anonymous</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodegroup_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                                                       </P
-></LI
-><LI
-><P
->&#13;array of int, Node group identifier                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Node group name                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Node group name                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Node group description                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Node group description                                                                  </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of nodes in this node group                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->nodegroup_id</CODE
->
-: int, Node group identifier                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Node group name                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->conf_file_ids</CODE
->
-: array, List of configuration files specific to this node group                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Node group description                                       </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetNodeNetworks"
->2.78. GetNodeNetworks</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3624"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetNodeNetworks (auth, nodenetwork_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3627"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about node network
-interfacess. If nodenetworks_filter is specified and is an array
-of node network identifiers, or a struct of node network
-attributes, only node network interfaces matching the filter will
-be returned. If return_fields is specified, only the
-specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3630"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node, anonymous</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodenetwork_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, Node interface identifier                                  </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node interface identifier                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Node interface identifier                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Subnet address                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Subnet address                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Is the primary interface for this node                                                                  </P
-></LI
-><LI
-><P
->&#13;array of boolean, Is the primary interface for this node                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, IP address of primary DNS server                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, IP address of primary DNS server                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, (Optional) Hostname                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, (Optional) Hostname                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, MAC address                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, MAC address                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Bandwidth limit                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Bandwidth limit                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Network broadcast address                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Network broadcast address                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Addressing method (e.g., 'static' or 'dhcp')                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Addressing method (e.g., 'static' or 'dhcp')                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Subnet mask                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Subnet mask                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node associated with this interface                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Node associated with this interface                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, IP address of secondary DNS server                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, IP address of secondary DNS server                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, IP address                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, IP address                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Address type (e.g., 'ipv4')                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Address type (e.g., 'ipv4')                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, IP address of primary gateway                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, IP address of primary gateway                                                                   </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean, Is the primary interface for this node                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, IP address                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, (Optional) Hostname                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int, Node interface identifier                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node associated with this interface                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int, Bandwidth limit                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string, Address type (e.g., 'ipv4')                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                 </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetNodes"
->2.79. GetNodes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN3829"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetNodes (auth, node_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN3832"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about nodes. If
-node_filter is specified and is an array of node identifiers or
-hostnames, or a struct of node attributes, only nodes matching the
-filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-><P
->Some fields may only be viewed by admins.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN3836"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node, anonymous</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when node entry was created                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when node entry was created                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->version</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Apparent Boot CD version                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Apparent Boot CD version                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Boot state                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Boot state                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_node_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign node identifier at peer                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign node identifier at peer                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Fully qualified hostname                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Fully qualified hostname                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site at which this node is located                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Site at which this node is located                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->boot_nonce</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, (Admin only) Random value generated by the node at last boot                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, (Admin only) Random value generated by the node at last boot                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->session</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, (Admin only) Node session value                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, (Admin only) Node session value                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ssh_rsa_key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Last known SSH host key                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Last known SSH host key                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, (Admin only) Node key                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, (Admin only) Node key                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when node entry was created                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when node entry was created                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Make and model of the actual machine                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Make and model of the actual machine                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this node belongs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this node belongs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Node identifier                                                                    </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->session</CODE
->
-: string, (Admin only) Node session value                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->pcu_ids</CODE
->
-: array, List of PCUs that control this node                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->nodegroup_ids</CODE
->
-: array, List of node groups that this node is in                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int, Date and time when node entry was created                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->version</CODE
->
-: string, Apparent Boot CD version                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->nodenetwork_ids</CODE
->
-: array, List of network interfaces that this node has                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string, Boot state                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_node_id</CODE
->
-: int, Foreign node identifier at peer                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, Fully qualified hostname                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int, Site at which this node is located                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ports</CODE
->
-: array, List of PCU ports that this node is connected to                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_ids</CODE
->
-: array, List of slices on this node                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_nonce</CODE
->
-: string, (Admin only) Random value generated by the node at last boot                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, (Admin only) Node key                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int, Date and time when node entry was created                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, Make and model of the actual machine                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer to which this node belongs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->conf_file_ids</CODE
->
-: array, List of configuration files specific to this node                                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ssh_rsa_key</CODE
->
-: string, Last known SSH host key                                      </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetPCUs"
->2.80. GetPCUs</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4065"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetPCUs (auth, pcu_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4068"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about power control
-units (PCUs). If pcu_filter is specified and is an array of PCU
-identifiers, or a struct of PCU attributes, only PCUs matching the
-filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-><P
->Admin may query all PCUs. Non-admins may only query the PCUs at
-their sites.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4072"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, PCU identifier                                     </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->username</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU username                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, PCU username                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->protocol</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU protocol, e.g. ssh, https, telnet                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, PCU protocol, e.g. ssh, https, telnet                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU IP address                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, PCU IP address                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, PCU identifier                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, PCU identifier                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU hostname                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, PCU hostname                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Identifier of site where PCU is located                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Identifier of site where PCU is located                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU model string                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, PCU model string                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, PCU username                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, PCU username                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->notes</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Miscellaneous notes                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Miscellaneous notes                                                                     </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->username</CODE
->
-: string, PCU username                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->protocol</CODE
->
-: string, PCU protocol, e.g. ssh, https, telnet                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of nodes that this PCU controls                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, PCU IP address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int, PCU identifier                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, PCU hostname                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int, Identifier of site where PCU is located                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ports</CODE
->
-: array, List of the port numbers that each node is connected to                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, PCU model string                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string, PCU username                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->notes</CODE
->
-: string, Miscellaneous notes                                  </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetPeerData"
->2.81. GetPeerData</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4217"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetPeerData (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4220"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns lists of local objects that a peer should cache in its
-database as foreign objects. Also returns the list of foreign
-nodes in this database, for which the calling peer is
-authoritative, to assist in synchronization of slivers.</P
-><P
->See the implementation of RefreshPeer for how this data is used.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4224"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, peer</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->Slices</CODE
->
-: array, List of local slices                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->Keys</CODE
->
-: array, List of local keys                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->Sites</CODE
->
-: array, List of local sites                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->Persons</CODE
->
-: array, List of local users                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->Nodes</CODE
->
-: array, List of local nodes                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->db_time</CODE
->
-: double, (Debug) Database fetch time                                  </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetPeerName"
->2.82. GetPeerName</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4276"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetPeerName (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4279"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns this peer's name, as defined in the config as PLC_NAME</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4282"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, peer, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Peer name                        </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetPeers"
->2.83. GetPeers</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4300"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetPeers (auth, peer_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4303"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about peers. If
-person_filter is specified and is an array of peer identifiers or
-peer names, or a struct of peer attributes, only peers matching
-the filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4306"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Peer name                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Peer GPG public key                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Peer GPG public key                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->cacert</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Peer SSL public certificate                                                                      </P
-></LI
-><LI
-><P
->&#13;array of string, Peer SSL public certificate                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Peer identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peername</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Peer name                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Peer name                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_url</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Peer API URL                                                                     </P
-></LI
-><LI
-><P
->&#13;array of string, Peer API URL                                                                    </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of nodes for which this peer is authoritative                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_ids</CODE
->
-: array, List of keys for which this peer is authoritative                                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_ids</CODE
->
-: array, List of users for which this peer is authoritative                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peername</CODE
->
-: string, Peer name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_url</CODE
->
-: string, Peer API URL                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_ids</CODE
->
-: array, List of slices for which this peer is authoritative                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Peer GPG public key                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->cacert</CODE
->
-: string, Peer SSL public certificate                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_ids</CODE
->
-: array, List of sites for which this peer is authoritative                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer identifier                                 </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetPersons"
->2.84. GetPersons</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4430"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetPersons (auth, person_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4433"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about users. If
-person_filter is specified and is an array of user identifiers or
-usernames, or a struct of user attributes, only users matching the
-filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-><P
->Users and techs may only retrieve details about themselves. PIs
-may retrieve details about themselves and others at their
-sites. Admins and nodes may retrieve details about all accounts.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4437"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->bio</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Biography                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Biography                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->first_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Given name                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Given name                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Surname                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Surname                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time of last update                                                                        </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time of last update                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->title</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Title                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, Title                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Home page                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Home page                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->verification_key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Reset password key                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Reset password key                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Has been enabled                                                                        </P
-></LI
-><LI
-><P
->&#13;array of boolean, Has been enabled                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->phone</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Telephone number                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Telephone number                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign user identifier at peer                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign user identifier at peer                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Account password in crypt() form                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Account password in crypt() form                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, User identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when account was created                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when account was created                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this user belongs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this user belongs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->verification_expires</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when verification_key expires                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when verification_key expires                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->email</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Primary e-mail address                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Primary e-mail address                                                                  </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bio</CODE
->
-: string, Biography                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->first_name</CODE
->
-: string, Given name                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_name</CODE
->
-: string, Surname                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int, Date and time of last update                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->roles</CODE
->
-: array, List of roles                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->title</CODE
->
-: string, Title                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, Home page                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_ids</CODE
->
-: array, List of key identifiers                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Has been enabled                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_ids</CODE
->
-: array, List of slice identifiers                                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->phone</CODE
->
-: string, Telephone number                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_person_id</CODE
->
-: int, Foreign user identifier at peer                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->role_ids</CODE
->
-: array, List of role identifiers                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int, User identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int, Date and time when account was created                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_ids</CODE
->
-: array, List of site identifiers                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer to which this user belongs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->email</CODE
->
-: string, Primary e-mail address                                       </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetRoles"
->2.85. GetRoles</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4673"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetRoles (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4676"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Get an array of structs containing details about all roles.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4679"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Role                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->role_id</CODE
->
-: int, Role identifier                                 </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSession"
->2.86. GetSession</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4704"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSession (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4707"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a new session key if a user or node authenticated
-successfully, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4710"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Session key                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSites"
->2.87. GetSites</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4728"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSites (auth, site_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4731"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about sites. If
-site_filter is specified and is an array of site identifiers or
-hostnames, or a struct of site attributes, only sites matching the
-filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4734"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node, anonymous</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when site entry was last updated, in seconds since UNIX epoch                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when site entry was last updated, in seconds since UNIX epoch                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Full site name                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Full site name                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, URL of a page that describes the site                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, URL of a page that describes the site                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Site identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Has been enabled                                                                        </P
-></LI
-><LI
-><P
->&#13;array of boolean, Has been enabled                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->longitude</CODE
->
-: double or array of double                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;double, Decimal longitude of the site                                                                    </P
-></LI
-><LI
-><P
->&#13;array of double, Decimal longitude of the site                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->latitude</CODE
->
-: double or array of double                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;double, Decimal latitude of the site                                                                     </P
-></LI
-><LI
-><P
->&#13;array of double, Decimal latitude of the site                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->max_slices</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Maximum number of slices that the site is able to create                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Maximum number of slices that the site is able to create                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->login_base</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Site slice prefix                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Site slice prefix                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->is_public</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Publicly viewable site                                                                  </P
-></LI
-><LI
-><P
->&#13;array of boolean, Publicly viewable site                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->max_slivers</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Maximum number of slivers that the site is able to create                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Maximum number of slivers that the site is able to create                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when site entry was created, in seconds since UNIX epoch                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when site entry was created, in seconds since UNIX epoch                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_site_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign site identifier at peer                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign site identifier at peer                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this site belongs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this site belongs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->abbreviated_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Abbreviated site name                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, Abbreviated site name                                                                   </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->address_ids</CODE
->
-: array, List of address identifiers                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->pcu_ids</CODE
->
-: array, List of PCU identifiers                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int, Date and time when site entry was last updated, in seconds since UNIX epoch                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Full site name                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of site node identifiers                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL of a page that describes the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Has been enabled                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_ids</CODE
->
-: array, List of account identifiers                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int, Site identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->longitude</CODE
->
-: double, Decimal longitude of the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_ids</CODE
->
-: array, List of slice identifiers                                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slivers</CODE
->
-: int, Maximum number of slivers that the site is able to create                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slices</CODE
->
-: int, Maximum number of slices that the site is able to create                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->login_base</CODE
->
-: string, Site slice prefix                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int, Date and time when site entry was created, in seconds since UNIX epoch                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->latitude</CODE
->
-: double, Decimal latitude of the site                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_public</CODE
->
-: boolean, Publicly viewable site                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_site_id</CODE
->
-: int, Foreign site identifier at peer                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer to which this site belongs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->abbreviated_name</CODE
->
-: string, Abbreviated site name                                        </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSliceAttributes"
->2.88. GetSliceAttributes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN4968"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSliceAttributes (auth, slice_attribute_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN4971"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about slice and
-sliver attributes. An attribute is a sliver attribute if the
-node_id field is set. If slice_attribute_filter is specified and
-is an array of slice attribute identifiers, or a struct of slice
-attribute attributes, only slice attributes matching the filter
-will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-><P
->Users may only query attributes of slices or slivers of which they
-are members. PIs may only query attributes of slices or slivers at
-their sites, or of which they are members. Admins may query
-attributes of any slice or sliver.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN4975"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_attribute_filter</CODE
->
-: array of int or struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int, Slice attribute identifier                                 </P
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice attribute type name                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Slice attribute type name                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->slice_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Slice identifier                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->slice_attribute_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute identifier                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Slice attribute identifier                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice attribute value                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, Slice attribute value                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->attribute_type_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Slice attribute type identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier, if a sliver attribute                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Node identifier, if a sliver attribute                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Minimum (least powerful) role that can set or change this attribute                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Minimum (least powerful) role that can set or change this attribute                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice attribute type description                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Slice attribute type description                                                                        </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice attribute type name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_id</CODE
->
-: int, Slice identifier                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_attribute_id</CODE
->
-: int, Slice attribute identifier                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, Slice attribute value                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->attribute_type_id</CODE
->
-: int, Slice attribute type identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier, if a sliver attribute                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int, Minimum (least powerful) role that can set or change this attribute                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice attribute type description                                     </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSliceAttributeTypes"
->2.89. GetSliceAttributeTypes</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5097"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSliceAttributeTypes (auth, attribute_type_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5100"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about slice
-attribute types. If attribute_type_filter is specified and
-is an array of slice attribute type identifiers, or a
-struct of slice attribute type attributes, only slice attribute
-types matching the filter will be returned. If return_fields is
-specified, only the specified details will be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5103"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Slice attribute type name                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->attribute_type_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Slice attribute type identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Minimum (least powerful) role that can set or change this attribute                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Minimum (least powerful) role that can set or change this attribute                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice attribute type name                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Slice attribute type name                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice attribute type description                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Slice attribute type description                                                                        </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->attribute_type_id</CODE
->
-: int, Slice attribute type identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int, Minimum (least powerful) role that can set or change this attribute                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice attribute type name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice attribute type description                                     </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSliceInstantiations"
->2.90. GetSliceInstantiations</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5186"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSliceInstantiations (auth)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5189"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of all valid slice instantiation states.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5192"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of string, Slice instantiation state                       </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSlices"
->2.91. GetSlices</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5210"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSlices (auth, slice_filter, return_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5213"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of structs containing details about slices. If
-slice_filter is specified and is an array of slice identifiers or
-slice names, or a struct of slice attributes, only slices matching
-the filter will be returned. If return_fields is specified, only the
-specified details will be returned.</P
-><P
->Users may only query slices of which they are members. PIs may
-query any of the slices at their sites. Admins and nodes may query
-any slice. If a slice that cannot be queried is specified in
-slice_filter, details about that slice will not be returned.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5217"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->creator_person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Identifier of the account that created this slice                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Identifier of the account that created this slice                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice instantiation state                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Slice instantiation state                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice name                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Slice name                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->slice_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Slice identifier                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->created</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when slice was created, in seconds since UNIX epoch                                                                   </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when slice was created, in seconds since UNIX epoch                                                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, URL further describing this slice                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, URL further describing this slice                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->max_nodes</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Maximum number of nodes that can be assigned to this slice                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Maximum number of nodes that can be assigned to this slice                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->expires</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when slice expires, in seconds since UNIX epoch                                                                       </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when slice expires, in seconds since UNIX epoch                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Identifier of the site to which this slice belongs                                                                  </P
-></LI
-><LI
-><P
->&#13;array of int, Identifier of the site to which this slice belongs                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_slice_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign slice identifier at peer                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign slice identifier at peer                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this slice belongs                                                                    </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this slice belongs                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Slice description                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Slice description                                                                       </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->return_fields</CODE
->
-: array, List of fields to return                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of struct                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->creator_person_id</CODE
->
-: int, Identifier of the account that created this slice                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string, Slice instantiation state                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_attribute_ids</CODE
->
-: array, List of slice attributes                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice name                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slice_id</CODE
->
-: int, Slice identifier                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->created</CODE
->
-: int, Date and time when slice was created, in seconds since UNIX epoch                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL further describing this slice                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_nodes</CODE
->
-: int, Maximum number of nodes that can be assigned to this slice                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->person_ids</CODE
->
-: array, List of accounts that can use this slice                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->expires</CODE
->
-: int, Date and time when slice expires, in seconds since UNIX epoch                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->site_id</CODE
->
-: int, Identifier of the site to which this slice belongs                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_slice_id</CODE
->
-: int, Foreign slice identifier at peer                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of nodes in this slice                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int, Peer to which this slice belongs                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice description                                    </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSliceTicket"
->2.92. GetSliceTicket</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5406"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSliceTicket (auth, slice_id_or_name)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5409"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a ticket for, or signed representation of, the specified
-slice. Slice tickets may be used to manually instantiate or update
-a slice on a node. Present this ticket to the local Node Manager
-interface to redeem it.</P
-><P
->If the slice has not been added to a node with AddSliceToNodes,
-and the ticket is redeemed on that node, it will be deleted the
-next time the Node Manager contacts the API.</P
-><P
->Users may only obtain tickets for slices of which they are
-members. PIs may obtain tickets for any of the slices at their
-sites, or any slices of which they are members. Admins may obtain
-tickets for any slice.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5415"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, peer</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Signed slice ticket                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="GetSlivers"
->2.93. GetSlivers</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5441"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->GetSlivers (auth, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5444"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns a struct containing information about the specified node
-(or calling node, if called by a node and node_id_or_hostname is
-not specified), including the current set of slivers bound to the
-node.</P
-><P
->All of the information returned by this call can be gathered from
-other calls, e.g. GetNodes, GetNodeNetworks, GetSlices, etc. This
-function exists almost solely for the benefit of Node Manager.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5448"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;struct                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->timestamp</CODE
->
-: int, Timestamp of this call, in seconds since UNIX epoch                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, Fully qualified hostname                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->conf_files</CODE
->
-: array of struct                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_owner</CODE
->
-: string, chown(1) owner                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->postinstall_cmd</CODE
->
-: string, Shell command to execute after installing                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->error_cmd</CODE
->
-: string, Shell command to execute if any error occurs                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->preinstall_cmd</CODE
->
-: string, Shell command to execute prior to installing                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: int, List of nodes linked to this file                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dest</CODE
->
-: string, Absolute path where file should be installed                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ignore_cmd_errors</CODE
->
-: boolean, Install file anyway even if an error occurs                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Configuration file is active                                                        </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_permissions</CODE
->
-: string, chmod(1) permissions                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->source</CODE
->
-: string, Relative path on the boot server where file can be downloaded                                                        </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodegroup_ids</CODE
->
-: int, List of node groups linked to this file                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->always_update</CODE
->
-: boolean, Always attempt to install file even if unchanged                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->file_group</CODE
->
-: string, chgrp(1) owner                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node identifier                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->groups</CODE
->
-: array of string, Node group name                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->networks</CODE
->
-: array of struct                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean, Is the primary interface for this node                                                      </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, IP address                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                                     </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, (Optional) Hostname                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                                        </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int, Node interface identifier                                                       </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->node_id</CODE
->
-: int, Node associated with this interface                                                     </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int, Bandwidth limit                                                 </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string, Address type (e.g., 'ipv4')                                                  </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->slivers</CODE
->
-: array of struct                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string, Slice instantiation state                                                    </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice name                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->slice_id</CODE
->
-: int, Slice identifier                                                        </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->keys</CODE
->
-: array of struct                                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                                         <CODE
-CLASS="parameter"
->key_type</CODE
->
-: string, Key type                                                                     </P
-></LI
-><LI
-><P
->&#13;                                                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Key value                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->expires</CODE
->
-: int, Date and time when slice expires, in seconds since UNIX epoch                                                   </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->attributes</CODE
->
-: array of struct                                                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice attribute type name                                                                    </P
-></LI
-><LI
-><P
->&#13;                                                                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, Slice attribute value                                                                        </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="NotifyPersons"
->2.94. NotifyPersons</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5618"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->NotifyPersons (auth, person_filter, subject, body)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5621"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Sends an e-mail message to the specified users. If person_filter
-is specified and is an array of user identifiers or usernames, or
-a struct of user attributes, only users matching the filter will
-receive the message.</P
-><P
->Returns 1 if successful.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5625"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, node</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_filter</CODE
->
-: array of int or string or struct                     </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of int or string                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;struct, Attribute filter                                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->bio</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Biography                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Biography                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->first_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Given name                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Given name                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_name</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Surname                                                                  </P
-></LI
-><LI
-><P
->&#13;array of string, Surname                                                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->last_updated</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time of last update                                                                        </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time of last update                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->title</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Title                                                                    </P
-></LI
-><LI
-><P
->&#13;array of string, Title                                                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Home page                                                                        </P
-></LI
-><LI
-><P
->&#13;array of string, Home page                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->verification_key</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Reset password key                                                                       </P
-></LI
-><LI
-><P
->&#13;array of string, Reset password key                                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean or array of boolean                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;boolean, Has been enabled                                                                        </P
-></LI
-><LI
-><P
->&#13;array of boolean, Has been enabled                                                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->phone</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Telephone number                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Telephone number                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Foreign user identifier at peer                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Foreign user identifier at peer                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Account password in crypt() form                                                                 </P
-></LI
-><LI
-><P
->&#13;array of string, Account password in crypt() form                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->person_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, User identifier                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->date_created</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when account was created                                                                      </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when account was created                                                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->peer_id</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer to which this user belongs                                                                     </P
-></LI
-><LI
-><P
->&#13;array of int, Peer to which this user belongs                                                                    </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->verification_expires</CODE
->
-: int or array of int                                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Date and time when verification_key expires                                                                 </P
-></LI
-><LI
-><P
->&#13;array of int, Date and time when verification_key expires                                                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->email</CODE
->
-: string or array of string                                                    </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Primary e-mail address                                                                   </P
-></LI
-><LI
-><P
->&#13;array of string, Primary e-mail address                                                                  </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->subject</CODE
->
-: string, E-mail subject                       </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->body</CODE
->
-: string, E-mail body                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="RebootNode"
->2.95. RebootNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5791"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->RebootNode (auth, node_id_or_hostname)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5794"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Sends the specified node a specially formatted UDP packet which
-should cause it to reboot immediately.</P
-><P
->Admins can reboot any node. Techs and PIs can only reboot nodes at
-their site.</P
-><P
->Returns 1 if the packet was successfully sent (which only whether
-the packet was sent, not whether the reboot was successful).</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5799"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="RefreshPeer"
->2.96. RefreshPeer</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5825"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->RefreshPeer (auth, peer_id_or_peername)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5828"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Fetches node and slice data from the specified peer and caches it
-locally; also deletes stale entries. Returns 1 if successful,
-faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5831"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_id_or_peername</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Peer name                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="ResetPassword"
->2.97. ResetPassword</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5857"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->ResetPassword (auth, person_id_or_email, verification_key, verification_expires)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5860"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->If verification_key is not specified, then a new verification_key
-will be generated and stored with the user's account. The key will
-be e-mailed to the user in the form of a link to a web page.</P
-><P
->The web page should verify the key by calling this function again
-and specifying verification_key. If the key matches what has been
-stored in the user's account, a new random password will be
-e-mailed to the user.</P
-><P
->Returns 1 if verification_key was not specified, or was specified
-and is valid, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5865"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->verification_key</CODE
->
-: string, Reset password key                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->verification_expires</CODE
->
-: int, Date and time when verification_key expires                     </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if verification_key is valid                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="SetPersonPrimarySite"
->2.98. SetPersonPrimarySite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5897"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->SetPersonPrimarySite (auth, person_id_or_email, site_id_or_login_base)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5900"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Makes the specified site the person's primary site. The person
-must already be a member of the site.</P
-><P
->Admins may update anyone. All others may only update themselves.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5904"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateAddress"
->2.99. UpdateAddress</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5938"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateAddress (auth, address_id, address_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5941"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing address with the values in
-address_fields.</P
-><P
->PIs may only update addresses of their own sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5946"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_id</CODE
->
-: int, Address identifier                      </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->city</CODE
->
-: string, City                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->country</CODE
->
-: string, Country                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line3</CODE
->
-: string, Address line 3                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line2</CODE
->
-: string, Address line 2                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->line1</CODE
->
-: string, Address line 1                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->state</CODE
->
-: string, State or province                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postalcode</CODE
->
-: string, Postal code                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateAddressType"
->2.100. UpdateAddressType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN5992"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateAddressType (auth, address_type_id_or_name, address_type_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN5995"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing address type with the values
-in address_type_fields.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN5999"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Address type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Address type                                     </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->address_type_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Address type                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Address type description                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateConfFile"
->2.101. UpdateConfFile</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6035"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateConfFile (auth, conf_file_id, conf_file_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6038"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a node configuration file. Only the fields specified in
-conf_file_fields are updated, all other fields are left untouched.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6042"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_id</CODE
->
-: int, Configuration file identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->conf_file_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_owner</CODE
->
-: string, chown(1) owner                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->postinstall_cmd</CODE
->
-: string, Shell command to execute after installing                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->error_cmd</CODE
->
-: string, Shell command to execute if any error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->preinstall_cmd</CODE
->
-: string, Shell command to execute prior to installing                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dest</CODE
->
-: string, Absolute path where file should be installed                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ignore_cmd_errors</CODE
->
-: boolean, Install file anyway even if an error occurs                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Configuration file is active                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_permissions</CODE
->
-: string, chmod(1) permissions                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->source</CODE
->
-: string, Relative path on the boot server where file can be downloaded                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->always_update</CODE
->
-: boolean, Always attempt to install file even if unchanged                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->file_group</CODE
->
-: string, chgrp(1) owner                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateKey"
->2.102. UpdateKey</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6100"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateKey (auth, key_id, key_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6103"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing key with the values in
-key_fields.</P
-><P
->Non-admins may only update their own keys.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6108"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_id</CODE
->
-: int, Key identifier                  </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->key_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key_type</CODE
->
-: string, Key type                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Key value                                    </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateMessage"
->2.103. UpdateMessage</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6139"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateMessage (auth, message_id, message_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6142"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing message template with the
-values in message_fields.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6146"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_id</CODE
->
-: string, Message identifier                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->message_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Message is enabled                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->template</CODE
->
-: string, Message template                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateNodeGroup"
->2.104. UpdateNodeGroup</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6177"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateNodeGroup (auth, nodegroup_id_or_name, nodegroup_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6180"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a custom node group.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6184"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node group identifier                                       </P
-></LI
-><LI
-><P
->&#13;string, Node group name                                  </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodegroup_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Node group name                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Node group description                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateNodeNetwork"
->2.105. UpdateNodeNetwork</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6220"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateNodeNetwork (auth, nodenetwork_id, nodenetwork_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6223"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates an existing node network. Any values specified in
-nodenetwork_fields are used, otherwise defaults are
-used. Acceptable values for method are dhcp and static. If type is
-static, then ip, gateway, network, broadcast, netmask, and dns1
-must all be specified in nodenetwork_fields. If type is dhcp,
-these parameters, even if specified, are ignored.</P
-><P
->PIs and techs may only update networks associated with their own
-nodes. Admins may update any node network.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6228"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodenetwork_id</CODE
->
-: int, Node interface identifier                       </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->nodenetwork_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->network</CODE
->
-: string, Subnet address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_primary</CODE
->
-: boolean, Is the primary interface for this node                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns1</CODE
->
-: string, IP address of primary DNS server                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, (Optional) Hostname                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->mac</CODE
->
-: string, MAC address                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bwlimit</CODE
->
-: int, Bandwidth limit                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->broadcast</CODE
->
-: string, Network broadcast address                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Addressing method (e.g., 'static' or 'dhcp')                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->netmask</CODE
->
-: string, Subnet mask                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->dns2</CODE
->
-: string, IP address of secondary DNS server                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, IP address                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->type</CODE
->
-: string, Address type (e.g., 'ipv4')                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->gateway</CODE
->
-: string, IP address of primary gateway                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateNode"
->2.106. UpdateNode</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6292"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateNode (auth, node_id_or_hostname, node_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6295"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a node. Only the fields specified in node_fields are
-updated, all other fields are left untouched.</P
-><P
->PIs and techs can update only the nodes at their sites. Only
-admins can update the key, session, and boot_nonce fields.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6300"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_id_or_hostname</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Node identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Fully qualified hostname                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->node_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->version</CODE
->
-: string, Apparent Boot CD version                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_state</CODE
->
-: string, Boot state                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, Fully qualified hostname                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->boot_nonce</CODE
->
-: string, (Admin only) Random value generated by the node at last boot                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->session</CODE
->
-: string, (Admin only) Node session value                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, (Admin only) Node key                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, Make and model of the actual machine                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdatePCU"
->2.107. UpdatePCU</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6351"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdatePCU (auth, pcu_id, pcu_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6354"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing PCU with the values in
-pcu_fields.</P
-><P
->Non-admins may only update PCUs at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6359"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_id</CODE
->
-: int, PCU identifier                  </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->pcu_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->username</CODE
->
-: string, PCU username                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->protocol</CODE
->
-: string, PCU protocol, e.g. ssh, https, telnet                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->node_ids</CODE
->
-: array, List of nodes that this PCU controls                                  </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ip</CODE
->
-: string, PCU IP address                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->notes</CODE
->
-: string, Miscellaneous notes                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->hostname</CODE
->
-: string, PCU hostname                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->model</CODE
->
-: string, PCU model string                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string, PCU username                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->ports</CODE
->
-: array, List of the port numbers that each node is connected to                                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int                                                      </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdatePeer"
->2.108. UpdatePeer</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6417"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdatePeer (auth, peer_id_or_name, peer_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6420"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a peer. Only the fields specified in peer_fields are
-updated, all other fields are left untouched.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6424"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Peer identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Peer name                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->peer_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->key</CODE
->
-: string, Peer GPG public key                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->cacert</CODE
->
-: string, Peer SSL public certificate                                  </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peername</CODE
->
-: string, Peer name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->peer_url</CODE
->
-: string, Peer API URL                                 </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdatePerson"
->2.109. UpdatePerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6466"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdatePerson (auth, person_id_or_email, person_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6469"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a person. Only the fields specified in person_fields are
-updated, all other fields are left untouched.</P
-><P
->Users and techs can only update themselves. PIs can only update
-themselves and other non-PIs at their sites.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6474"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user, tech</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->bio</CODE
->
-: string, Biography                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->first_name</CODE
->
-: string, Given name                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->last_name</CODE
->
-: string, Surname                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->title</CODE
->
-: string, Title                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, Home page                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Has been enabled                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->phone</CODE
->
-: string, Telephone number                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->password</CODE
->
-: string, Account password in crypt() form                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->email</CODE
->
-: string, Primary e-mail address                                       </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateSite"
->2.110. UpdateSite</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6531"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateSite (auth, site_id_or_login_base, site_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6534"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates a site. Only the fields specified in update_fields are
-updated, all other fields are left untouched.</P
-><P
->PIs can only update sites they are a member of. Only admins can
-update max_slices, max_slivers, and login_base.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6539"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_id_or_login_base</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Site identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Site slice prefix                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->site_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Full site name                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL of a page that describes the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->enabled</CODE
->
-: boolean, Has been enabled                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->longitude</CODE
->
-: double, Decimal longitude of the site                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->latitude</CODE
->
-: double, Decimal latitude of the site                                 </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slices</CODE
->
-: int, Maximum number of slices that the site is able to create                                        </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->login_base</CODE
->
-: string, Site slice prefix                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_slivers</CODE
->
-: int, Maximum number of slivers that the site is able to create                                       </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->is_public</CODE
->
-: boolean, Publicly viewable site                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->abbreviated_name</CODE
->
-: string, Abbreviated site name                                        </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateSliceAttribute"
->2.111. UpdateSliceAttribute</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6599"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateSliceAttribute (auth, slice_attribute_id, value)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6602"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the value of an existing slice or sliver attribute.</P
-><P
->Users may only update attributes of slices or slivers of which
-they are members. PIs may only update attributes of slices or
-slivers at their sites, or of which they are members. Admins may
-update attributes of any slice or sliver.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6607"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_attribute_id</CODE
->
-: int, Slice attribute identifier                      </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->value</CODE
->
-: string, Slice attribute value                        </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateSliceAttributeType"
->2.112. UpdateSliceAttributeType</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6631"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateSliceAttributeType (auth, attribute_type_id_or_name, attribute_type_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6634"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing attribute with the values in
-attribute_type_fields.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6638"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice attribute type identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Slice attribute type name                                        </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->attribute_type_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->min_role_id</CODE
->
-: int, Minimum (least powerful) role that can set or change this attribute                                     </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->name</CODE
->
-: string, Slice attribute type name                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice attribute type description                                     </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="UpdateSlice"
->2.113. UpdateSlice</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6677"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->UpdateSlice (auth, slice_id_or_name, slice_fields)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6680"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Updates the parameters of an existing slice with the values in
-slice_fields.</P
-><P
->Users may only update slices of which they are members. PIs may
-update any of the slices at their sites, or any slices of which
-they are members. Admins may update any slice.</P
-><P
->Only PIs and admins may update max_nodes. Slices cannot be renewed
-(by updating the expires parameter) more than 8 weeks into the
-future.</P
-><P
->Returns 1 if successful, faults otherwise.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6686"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin, pi, user</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_id_or_name</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, Slice identifier                                    </P
-></LI
-><LI
-><P
->&#13;string, Slice name                                       </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->slice_fields</CODE
->
-: struct                       </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->url</CODE
->
-: string, URL further describing this slice                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->max_nodes</CODE
->
-: int, Maximum number of nodes that can be assigned to this slice                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->instantiation</CODE
->
-: string, Slice instantiation state                                    </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->expires</CODE
->
-: int, Date and time when slice expires, in seconds since UNIX epoch                                   </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->description</CODE
->
-: string, Slice description                                    </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if successful                     </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="VerifyPerson"
->2.114. VerifyPerson</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6731"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->VerifyPerson (auth, person_id_or_email, verification_key, verification_expires)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6734"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Verify a new (must be disabled) user's e-mail address and registration.</P
-><P
->If verification_key is not specified, then a new verification_key
-will be generated and stored with the user's account. The key will
-be e-mailed to the user in the form of a link to a web page.</P
-><P
->The web page should verify the key by calling this function again
-and specifying verification_key. If the key matches what has been
-stored in the user's account, then an e-mail will be sent to the
-user's PI (and support if the user is requesting a PI role),
-asking the PI (or support) to enable the account.</P
-><P
->Returns 1 if the verification key if valid.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6740"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->admin</P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->auth</CODE
->
-: struct, API authentication structure                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->AuthMethod</CODE
->
-: string, Authentication method to use                                 </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->person_id_or_email</CODE
->
-: int or string                        </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, User identifier                                     </P
-></LI
-><LI
-><P
->&#13;string, Primary e-mail address                                   </P
-></LI
-></UL
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->verification_key</CODE
->
-: string, Reset password key                   </P
-></LI
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->verification_expires</CODE
->
-: int, Date and time when verification_key expires                     </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;int, 1 if verification_key is valid                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="system.listMethods"
->2.115. system.listMethods</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6772"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->system.listMethods ()</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6775"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->This method lists all the methods that the XML-RPC server knows
-how to dispatch.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6778"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
-></P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->None</P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array, List of methods                   </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="system.methodHelp"
->2.116. system.methodHelp</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6791"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->system.methodHelp (method)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6794"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns help text if defined for the method passed, otherwise
-returns an empty string.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6797"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
-></P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Method name                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string, Method help                      </P
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="system.methodSignature"
->2.117. system.methodSignature</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6811"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->system.methodSignature (method)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6814"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Returns an array of known signatures (an array of arrays) for the
-method name passed. If no signatures are known, returns a
-none-array (test for type != array to detect missing signature).</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6817"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
-></P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->method</CODE
->
-: string, Method name                  </P
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of array, Method signature                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;string                                   </P
-></LI
-></UL
-></LI
-></UL
-></DIV
-><DIV
-CLASS="section"
-><HR><H2
-CLASS="section"
-><A
-NAME="system.multicall"
->2.118. system.multicall</A
-></H2
-><P
->Prototype:<A
-NAME="AEN6834"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->system.multicall (calls)</P
-></BLOCKQUOTE
-></P
-><P
->Description:<A
-NAME="AEN6837"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
->Process an array of calls, and return an array of results. Calls
-should be structs of the form</P
-><P
->{'methodName': string, 'params': array}</P
-><P
->Each result will either be a single-item array containg the result
-value, or a struct of the form</P
-><P
->{'faultCode': int, 'faultString': string}</P
-><P
->This is useful when you need to make lots of small calls without
-lots of round trips.</P
-></BLOCKQUOTE
-></P
-><P
->Allowed Roles:<A
-NAME="AEN6844"
-></A
-><BLOCKQUOTE
-CLASS="BLOCKQUOTE"
-><P
-></P
-></BLOCKQUOTE
-></P
-><P
->Parameters:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                         <CODE
-CLASS="parameter"
->calls</CODE
->
-: array of struct                      </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->params</CODE
->
-: array, Method arguments                                      </P
-></LI
-><LI
-><P
->&#13;                                         <CODE
-CLASS="parameter"
->methodName</CODE
->
-: string, Method name                                  </P
-></LI
-></UL
-></LI
-></UL
-><P
->Returns:</P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of mixed or struct                 </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;array of mixed                                   </P
-></LI
-><LI
-><P
->&#13;struct                                   </P
-><P
-></P
-><UL
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->faultCode</CODE
->
-: int, XML-RPC fault code                                                      </P
-></LI
-><LI
-><P
->&#13;                                                         <CODE
-CLASS="parameter"
->faultString</CODE
->
-: int, XML-RPC fault detail                                                    </P
-></LI
-></UL
-></LI
-></UL
-></LI
-></UL
-></DIV
-></DIV
-></DIV
-></BODY
-></HTML
->
\ No newline at end of file
diff --git a/plcsh b/plcsh
index 10944b0..209a0e0 100755 (executable)
--- a/plcsh
+++ b/plcsh
@@ -54,6 +54,7 @@ try:
     api = shell.api
     config = shell.config
 except Exception, err:
+    print_exc()        
     print "Error:", err
     print
     parser.print_help()