Line 5: |
Line 5: |
| == Overview == | | == Overview == |
| | | |
− | To better understand this API, see a technical explanation of its [[Platform_Team/Sugar_Network/Architecture#Conceptual_level|conceptual level]] and [[#Sugar Network resources|objects model]] in particular. | + | To better understand this API, see a technical explanation of its [[Platform_Team/Sugar_Network/Architecture#Conceptual_level|conceptual level]] and [[#Sugar_Network_resources|objects model]] in particular. |
| | | |
| The API operates with [[Sugar Network]] [[#Sugar_Network_resources|resources]], which are collections of objects. All objects are identified by globally unique identifiers, GUIDs. Resources might support [[#Common_actions|common actions]]. While processing requests, the server might generate [[#Notifications|events]]. | | The API operates with [[Sugar Network]] [[#Sugar_Network_resources|resources]], which are collections of objects. All objects are identified by globally unique identifiers, GUIDs. Resources might support [[#Common_actions|common actions]]. While processing requests, the server might generate [[#Notifications|events]]. |
Line 16: |
Line 16: |
| | | |
| * {{Code|SERVER}}, [[#API_servers|particular]] Sugar Network API server; | | * {{Code|SERVER}}, [[#API_servers|particular]] Sugar Network API server; |
− | * {{Code|RESOURCE}}, name one of the [[#Resources|existing]] resources; | + | * {{Code|RESOURCE}}, name one of the [[#Sugar_Network_resources|existing]] resources; |
| * {{Code|GUID}}, the {{Code|RESOURCE}}'s particular object; | | * {{Code|GUID}}, the {{Code|RESOURCE}}'s particular object; |
| * {{Code|PROPERTY}}, particular property of {{Code|GUID}} object; | | * {{Code|PROPERTY}}, particular property of {{Code|GUID}} object; |
Line 143: |
Line 143: |
| === Aggregated properties === | | === Aggregated properties === |
| | | |
− | [[Sugar_Network/Resources#Property_types|Aggregated]] properties have special API to treat their content. | + | [[#resource-types|Aggregated]] properties have special API to treat their content. |
| | | |
| <div id="POST-aggproperty"></div> | | <div id="POST-aggproperty"></div> |
Line 165: |
Line 165: |
| === Download releases === | | === Download releases === |
| | | |
− | To easy download Context [[Sugar_Network/Resources#context-releases|releases]] and avoid reading raw ''Context.releases'' property, there are special high-level API commands. | + | To easy download Context [[#context-releases|releases]] and avoid reading raw ''Context.releases'' property, there are special high-level API commands. |
| | | |
| <div id="GET-solve"></div> | | <div id="GET-solve"></div> |
Line 181: |
Line 181: |
| The resulting info is a JSON object with keys equal to Context guids and value objects for chosen release with the following keys: | | The resulting info is a JSON object with keys equal to Context guids and value objects for chosen release with the following keys: |
| | | |
− | * {{Code|blob}}, bundle [[Sugar_Network/Resources#Property_types|digest]] to download; | + | * {{Code|blob}}, bundle [[#resource-types|digest]] to download; |
| * {{Code|version}}, chosen version number; | | * {{Code|version}}, chosen version number; |
| * {{Code|title}}, the ''Context.title'' value; | | * {{Code|title}}, the ''Context.title'' value; |
Line 194: |
Line 194: |
| === Upload releases === | | === Upload releases === |
| | | |
− | To easy upload Context [[Sugar_Network/Resources#context-releases|releases]] and avoid writing to raw ''Context.releases'' property, there is a special high-level API command. | + | To easy upload Context [[#context-releases|releases]] and avoid writing to raw ''Context.releases'' property, there is a special high-level API command. |
| | | |
| '''POST''' /context?cmd='''submit'''[&''PROP''=''VALUE''][&initial] | | '''POST''' /context?cmd='''submit'''[&''PROP''=''VALUE''][&initial] |