[Index]
A Bundle is a logical grouping of packages that are installed together.
Model ref.: relation/Bundle
The full URL would include the host-proxy name: https://[host-proxy].
Variables are enclosed in square brackets.
{ "$schema": "http://json-schema.org/draft-03/schema", "type": "object", "properties": { "patchDat": { "items": { "type": "object", "properties": { "bundleName": { "is_password": false, "description": "The name of the bundle to which this patch applies.", "title": "Bundle", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "source_code_changes": { "is_password": false, "description": "Detailed information regarding each source code file that is updated by this patch.", "title": "Source Code Changes", "minItems": 0, "items": { "is_password": false, "type": "object", "properties": { "chroot": { "is_password": false, "description": "The platform bubble being patched, for example voss-deviceapi, mongo, nginx.", "title": "Bubble", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "description": { "is_password": false, "description": "Description of the changes that were made to the given source code file.", "title": "Description", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "filepath": { "is_password": false, "description": "The path of a file that was patched.", "title": "File", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" } } }, "required": false, "displayable": false, "readonly": false, "type": "array" }, "name": { "is_password": false, "description": "The unique name of the patch.", "title": "Name", "required": true, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "releases": { "is_password": false, "description": "The HCS release to which this patch applies.", "title": "Releases", "minItems": 0, "items": { "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+( (ES|SU)[0-9]+[A-Za-z]*){0,1}$", "is_password": false, "type": "string" }, "required": false, "displayable": false, "readonly": false, "type": "array" }, "models": { "is_password": false, "title": "Models", "minItems": 0, "items": { "is_password": false, "type": "object", "properties": { "model_type": { "is_password": false, "description": "The type of model included in the patch.", "title": "Type", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "model_instances": { "is_password": false, "title": "Instances", "minItems": 0, "items": { "type": "object", "properties": { "model_version": { "is_password": false, "description": "The new version of the patched model.", "title": "Version", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "model_instance": { "is_password": false, "description": "The business key of the model included in the patch.", "title": "Instance", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "description": { "is_password": false, "description": "Description of the changes that were made to the given model instance.", "title": "Description", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" } } }, "required": false, "displayable": false, "readonly": false, "type": "array" } } }, "required": false, "displayable": false, "readonly": false, "type": "array" }, "notes": { "is_password": false, "description": "A description of any side-effects resulting from applying this patch, such as migration of existing data.", "title": "Notes", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "defect_ids": { "is_password": false, "description": "A list defects that are fixed by this patch.", "title": "Defect IDs", "minItems": 0, "items": { "is_password": false, "type": "string" }, "required": false, "displayable": false, "readonly": false, "type": "array" }, "version": { "is_password": false, "description": "The version of the patch.", "title": "Version", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "description": { "is_password": false, "description": "Description of the patch.", "title": "Description", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" } } }, "type": "array", "title": "Patch Dat" }, "name": { "is_password": false, "description": "Name of the bundle.", "title": "Name", "required": true, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "author": { "is_password": false, "description": "The field matches the Author field of each package in the bundle.", "title": "Author", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "buildTime": { "is_password": false, "description": "Timestamp when the bundle was generated.", "title": "Build Time", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "platformVersion": { "is_password": false, "description": "The CUCDM platform version.", "title": "Platform Version", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "previousVersion": { "is_password": false, "description": "Previous Version of the bundle.", "title": "Previous Version", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "version": { "is_password": false, "description": "Version of the bundle.", "title": "Version", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "build": { "is_password": false, "description": "The build version of the bundle.", "title": "Build", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "branch": { "is_password": false, "description": "The source code branch where the bundle was generated.", "title": "Branch", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "release": { "is_password": false, "description": "Overall release of HCS.", "title": "Release", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "packageDat": { "items": { "type": "object", "properties": { "md5sum": { "required": false, "type": "string", "description": "The package md5 checksum.", "title": "MD5 Checksum" }, "vendor": { "required": false, "type": "string", "description": "The package vendor.", "title": "Vendor" }, "name": { "required": true, "type": "string", "description": "The name that uniquely identifies this package at a specific hierarchy node.", "title": "Package Name" }, "copyright": { "required": false, "type": "string", "description": "The package copyright string.", "title": "Copyright String" }, "author": { "required": false, "type": "string", "description": "The package author.", "title": "Author" }, "documentation": { "required": false, "type": "string", "description": "The package documentation.", "title": "Documentation" }, "manifest": { "items": { "type": "object", "properties": { "primitive_type": { "description": "The type of primitive instances", "title": "Primitive Type", "format": "uri", "choices": [], "target_model_type": "", "type": "string", "target": "/api/choices/?format=json&hierarchy=[hierarchy]&auth_token=[authtoken] }, "primitive_instances": { "items": { "type": "object", "properties": { "version": { "type": "string", "description": "The instance version string.", "title": "Instance Version" }, "primitive_instance": { "title": "Primitive Instance", "type": "string", "description": "A primitive instance", "choices": [ { "value": " ", "title": " " } ] } } }, "type": "array", "description": "The primitive instances that make up the package", "title": "Primitive Instances" } } }, "required": false, "type": "array", "description": "A list of references to primitive types and instances that make up the package", "title": "Manifest" }, "version": { "pattern": "^[0-9]+?(\\.[0-9]+?)+?$", "required": false, "type": "string", "description": "", "title": "Package Version" }, "dependencies": { "items": { "type": "object", "properties": { "package_version": { "type": "string", "description": "", "title": "Package Version" }, "comparator": { "title": "Comparator", "type": "string", "description": "", "choices": [ { "value": ">=", "title": ">=" }, { "value": ">", "title": ">" }, { "value": "==", "title": "==" }, { "value": "<=", "title": "<=" }, { "value": "<", "title": "<" } ] }, "package_name": { "choices": [ { "value": " ", "title": " " } ], "required": true, "type": "string", "description": "", "title": "Package" } } }, "required": false, "type": "array", "description": "The package md5 checksum.", "title": "Depends on" } } }, "type": "array", "title": "Package Dat" }, "deploymentMode": { "is_password": false, "description": "Type of deployment mode.", "title": "Deployment Mode", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" }, "view": { "is_password": false, "description": "The source code view where the build was generated.", "title": "View", "required": false, "displayable": false, "readonly": false, "maxLength": 1024, "type": "string" } }, "schema_version": "2.1" }
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get the GUI Add form. | GET | /api/relation/Bundle/add/ |
|
The GUI Add form of relation/Bundle as JSON |
The API call to the /add/ URL can only be made from a hierarchy that allows the model type to be added. The actions in the response shows the url for the POST API call to create an instance.
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Create | POST | /api/relation/Bundle/ | hierarchy=[hierarchy] |
|
tool/Transaction/[trans pkid]to inspect the created resource and its instance pkid.
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Bulk delete [pkid1],[pkid2]... | DELETE | /api/relation/Bundle/ | hierarchy=[hierarchy] | {"hrefs":["/api/relation/Bundle/[pkid1]", "/api/relation/Bundle/[pkid2]", ...]} |
GET http://[host-proxy]/api/relation/Bundle/?hierarchy=[hierarchy]&format=json
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Get a selected [export_format] of the schema and instances [pkid1], [pkid2],... of relation/Bundle; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | POST | /api/relation/Bundle/export/ |
|
{ "hrefs":["/api/relation/Bundle/[pkid1]", "/api/relation/Bundle/[pkid2]",...]}} |
For export_format=json, the response is a time stamped zip file of data in JSON as in the system database. Item properties such as strings that are empty or Boolean values that are not set, are not included. The filename in the response is of the format as the example:
Content-Disposition: attachment; filename=export_2013-05-17_14:20:19.186444.json.zip Content-Language:en Content-Type:application/x-zip
For export_format=raw_xlsx, the response is a MS Excel spreadsheet with columns corresponding to the JSON format export and a response filename format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_CCYY-MM-DD_HH-MM-SS.xlsx Content-Language:en Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=xlsx, the response is a MS Excel spreadsheet, arranged by any Field Display Policies that apply. The columns correspond with those of a Bulk Load Template export sheet. The response filename format is:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_formatted_CCYY-MM-DD_HH-MM-SS.xlsx Content-Language:en Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
The XLSX format can be used to bulk load instances of relation/Bundle and the JSON format can be used to import instances of relation/Bundle.
GET http://[host-proxy]/api/relation/Bundle/?hierarchy=[hierarchy]
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get a compressed format of the Bulk Load spreadsheet template for relation/Bundle | POST | /api/relation/Bundle/export_bulkload_template/ |
|
The response is an attachment of the format: filetype_bulkloadsheet.xlsx.gz |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
List | GET | /api/relation/Bundle/ |
|
The relation/Bundle schema and all instances as JSON. |
(The list will return 0 to 3 relation/Bundle instances)
{ "operations": [ "field_display_policy", "configuration_template", "help", "get", "export_bulkload_template", "list", "update", "remove", "add", "bulk_update", "export" ], "pagination": { "direction": "asc", "order_by": "name", "maximum_limit": 2000, "skip": 0, "current": "/api/relation/Bundle/?skip=0&limit=3&order_by=name&direction=asc&traversal=default", "limit": 3, "total_limit": null, "total": 1 }, "meta": { "tags": [], "cached": true, "title": "", "business_key": {}, "schema_version": "2.1", "references": { "device": [ { "pkid": "", "href": "" } ], "self": [ { "pkid": null, "href": "/api/relation/Bundle/None/" } ], "children": [], "parent": [ { "pkid": "6t0ggef2c0deab00hb595101", "href": "/api/data/HierarchyNode/6t0ggef2c0deab00hb595101" } ], "foreign_key": [] }, "actions": [ { "add": { "support_async": false, "class": "add", "href": "/api/relation/Bundle/add/?hierarchy=[hierarchy]", "method": "GET", "title": "Add" } }, { "remove": { "support_async": true, "class": "delete", "href": "/api/relation/Bundle/?hierarchy=[hierarchy]", "method": "DELETE", "title": "Delete" } }, { "export": { "title": "Export", "support_async": false, "submit": "payload", "class": "export", "href": "/api/relation/Bundle/export/?hierarchy=[hierarchy]", "method": "POST", "view": "/api/view/ExportData/add/?auth_token=[authtoken] } }, { "export_bulkload_template": { "support_async": false, "class": "bulkload_template", "href": "/api/relation/Bundle/export_bulkload_template/?hierarchy=[hierarchy]", "method": "POST", "title": "Export Bulk Load Template" } }, { "list": { "support_async": false, "class": "list", "href": "/api/relation/Bundle/?hierarchy=[hierarchy]", "method": "GET", "title": "List" } }, { "help": { "support_async": false, "class": "help", "href": "/api/relation/Bundle/help?hierarchy=[hierarchy]", "method": "GET", "title": "Help" } } ], "model_type": "relation/Bundle", "model_specific_actions": [ "help", "get", "export_bulkload_template", "list", "update", "remove", "add", "export" ], "summary_attrs": [ { "name": "name", "title": "Name" }, { "name": "release", "title": "Release" }, { "name": "version", "title": "Version" }, { "allow_filtering": true, "name": "hierarchy_friendly_name", "title": "Located At" } ], "api_version": "20.1.1", "tagged_versions": [] }, "resources": [ { "pkid": "5fff240dce894e0015f6c701", "meta": { "tags": [], "cached": true, "title": "title format", "business_key": { "hierarchy": false, "unique": [ "name" ] }, "schema_version": "2.0", "summary": "false", "references": { "device": [ { "pkid": "", "href": "" } ], "owner": [ { "pkid": "" } ], "self": [ { "pkid": "5fff240dce894e0015f6c701", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/" } ], "parent": [ { "pkid": "6t0ggef2c0deab00hb595101", "href": "/api/data/HierarchyNode/6t0ggef2c0deab00hb595101" } ], "foreign_key": [] }, "actions": [ { "update": { "support_async": true, "class": "update", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/", "method": "PUT", "title": "Modify" } }, { "remove": { "support_async": true, "class": "delete", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/", "method": "DELETE", "title": "Delete" } }, { "export": { "title": "Export", "support_async": false, "submit": "payload", "class": "export", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/export/", "method": "GET", "view": "/api/view/ExportData/add/" } }, { "get": { "support_async": false, "class": "get", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/", "method": "GET", "title": "Get" } }, { "help": { "support_async": false, "class": "help", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/help", "method": "GET", "title": "Help" } } ], "model_type": "relation/Bundle", "path": [ "6t0ggef2c0deab00hb595101", "5fff240dce894e0015f6c701" ], "summary_attrs": [ { "name": "name", "title": "Name" }, { "name": "release", "title": "Release" }, { "name": "version", "title": "Version" }, { "allow_filtering": true, "name": "hierarchy_friendly_name", "title": "Located At" } ], "api_version": "20.1.1", "tagged_versions": [] }, "data": { "name": "HcsBase", "author": "VOSS-4-UC", "pkid": "5fff240dce894e0015f6c702", "buildTime": "2021-01-13 18:47:09.471708", "release": "20.1.1.pre-release.13.build-6008", "version": "128.0", "build": "6008", "branch": "develop", "platformVersion": "20.1.1-1610545109", "hierarchy_friendly_name": "sys (System)", "view": "V4UC/develop_V4UC_build_template_product", "deploymentMode": "Enterprise", "hierarchy_path": "sys" } } ] }
(Show the first instance)
{ "pkid": "5fff240dce894e0015f6c701", "meta": { "tags": [], "cached": true, "cache_control_policy": "cache_then_device", "title": "HcsBase", "business_key": {}, "schema_version": "2.1", "references": { "device": [ { "pkid": "", "href": "" } ], "self": [ { "pkid": "5fff240dce894e0015f6c701", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/" } ], "children": [], "parent": [ { "pkid": "6t0ggef2c0deab00hb595101", "href": "/api/data/HierarchyNode/6t0ggef2c0deab00hb595101" } ] }, "actions": [ { "update": { "support_async": true, "class": "update", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/?hierarchy=[hierarchy]", "method": "PUT", "title": "Modify" } }, { "remove": { "support_async": true, "class": "delete", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/?hierarchy=[hierarchy]", "method": "DELETE", "title": "Delete" } }, { "export": { "title": "Export", "support_async": false, "submit": "payload", "class": "export", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/export/?hierarchy=[hierarchy]", "method": "GET", "view": "/api/view/ExportData/add/?auth_token=[authtoken] } }, { "get": { "support_async": false, "class": "get", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/?hierarchy=[hierarchy]", "method": "GET", "title": "Get" } }, { "help": { "support_async": false, "class": "help", "href": "/api/relation/Bundle/5fff240dce894e0015f6c701/help?hierarchy=[hierarchy]", "method": "GET", "title": "Help" } } ], "model_type": "relation/Bundle", "summary_attrs": [ { "name": "name", "title": "Name" }, { "name": "release", "title": "Release" }, { "name": "version", "title": "Version" }, { "allow_filtering": true, "name": "hierarchy_friendly_name", "title": "Located At" } ], "api_version": "20.1.1", "tagged_versions": [] }, "data": { "patchDat": [], "name": "HcsBase", "author": "VOSS-4-UC", "buildTime": "2021-01-13 18:47:09.471708", "release": "20.1.1.pre-release.13.build-6008", "version": "128.0", "build": "6008", "branch": "develop", "platformVersion": "20.1.1-1610545109", "packageDat": [], "deploymentMode": "Enterprise", "view": "V4UC/develop_V4UC_build_template_product" } }
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get the on-line Help for relation/Bundle. | GET | /api/relation/Bundle/help | hierarchy=[hierarchy] | On-line help of Model ref.: relation/Bundle as HTML |
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Modify | PUT | /api/relation/Bundle/[pkid]/ | hierarchy=[hierarchy] | (For payload specification) |
For Bulk modification, refer to the Bulk Modify section.
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Delete | DELETE | /api/relation/Bundle/[pkid]/ | hierarchy=[hierarchy] |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get a selected [export_format] of the schema and a single instance with [pkid] of relation/Bundle; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | GET | /api/relation/Bundle/[pkid]/export/ |
|
The response is an attachment. Refer to the list below. |
For export_format=raw_xlsx, the response is a "raw" MS Excel spreadsheet with columns corresponding to the JSON format export and a response format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_CCYY-MM-DD_HH-MM-SS.xlsx Content-Language:en Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=xlsx, the response is a MS Excel spreadsheet, formatted to show all columns and a response format:
Content-Disposition: attachment; filename=<resource_type>_<resource_name>_exportedsheet_formatted_CCYY-MM-DD_HH-MM-SS.xlsx Content-Language:en Content-Type:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
For export_format=json, the response is a time stamped zip file of data in JSON and a response format:
Content-Disposition: attachment; filename=export_2013-05-17_14:20:19.186444.json.zip Content-Language:en Content-Type:application/x-zip
The XLSX format can be used to bulk load instances of relation/Bundle and the JSON format can be used to import instances of relation/Bundle.
For Bulk Export, refer to the Bulk Export section.
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get | GET | /api/relation/Bundle/[pkid]/ | hierarchy=[hierarchy] | The relation/Bundle instance with [pkid]. |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Help | GET | /api/relation/Bundle/[pkid]/help | hierarchy=[hierarchy] | The on-line Help for relation/Bundle. |