[Index]
Stores generic driver connection parameters for interfacing to an external service.
Model ref.: data/Pexip
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": { "name": { "title": "Name", "description": "Name for this instance of generic driver connection details.", "type": "string", "required": true }, "description": { "title": "Description", "description": "Description for this instance of generic driver connection details.", "type": "string", "required": true }, "version": { "title": "Version", "description": "Version of models to use.", "type": "string", "required": true, "pattern": "^[0-9]+?(\\.[0-9]+?)+?$" }, "auth_method": { "title": "Authentication Method", "description": "Type of authentication to use when interfacing to the external service.", "type": "string", "required": true, "choices": [ { "value": "BASIC", "title": "HTTP Basic Authentication" }, { "value": "OAUTH", "title": "OAuth(OApen Authorization)" }, { "value": "SESSION", "title": "Session Based Authentication" } ] }, "username": { "title": "Username", "description": "Username to use with specified authentication method.", "type": "string", "required": false }, "password": { "title": "Password", "description": "Password to use with specified authentication method.", "type": "string", "required": false, "is_password": true, "store_encrypted": true }, "token": { "title": "Token", "description": "Token to use with specified authentication method.", "type": "string", "required": false, "is_password": true, "store_encrypted": true }, "test_connection_uri": { "title": "Test Connection URI", "description": "URI to use when testing connection to external service, e.g. https://service.domain/api/health, {{ driver_parameters.host_base }}/status", "type": "string" }, "driver_parameters": { "title": "Driver Parameters", "description": "Additional parameters for the driver", "type": "array", "items": { "type": "object", "properties": { "name": { "title": "Name", "description": "Name of additional driver parameter.", "type": "string", "required": true }, "value": { "title": "Value", "description": "Value of additional driver parameter.", "type": "string", "required": true } } } }, "default_request_headers": { "title": "Default Request Headers", "description": "Default HTTP request headers to send with all device model API operation requests. Defaults specified here will be overriden by request headers specified on individual device model API operation definitions.", "type": "array", "items": { "type": "object", "properties": { "name": { "title": "Name", "description": "Name of HTTP request header, e.g. Accept.", "type": "string", "required": true }, "value": { "title": "Value", "description": "Value of HTTP request header, e.g. text/plain.", "type": "string", "required": true } } } }, "default_response_handlers": { "title": "Default Response Handlers", "description": "Default handlers to execute on all API operation responses. Only those response handlers' which condition evaluates to True are executed.", "type": "array", "items": { "type": "object", "properties": { "condition": { "title": "Condition", "description": "Jinja template which if evaluation results in a value of True will cause the specified handler type to be executed, e.g. {{ status_code == 429 }}.", "type": "string", "required": true }, "type": { "title": "Type", "description": "Response handler type to execute if specified condition evaluates to True, e.g. Backoff & Retry.", "type": "string", "required": true, "choices": [ { "value": "backoff_retry", "title": "Backoff & Retry" }, { "value": "failure_duplicate", "title": "Failure - Duplicate" }, { "value": "invalid_session", "title": "Invalid Session" } ] } } } }, "session_based_auth_request": { "title": "Session Based Auth Request", "description": "Describes the API request required to obtain a valid auth token.", "type": "object", "properties": { "login_uri": { "title": "Login URI", "description": "URI for the API Login request.", "type": "string" }, "login_http_method": { "title": "Login HTTP Method", "description": "HTTP method for API login request.", "type": "string", "default": "POST", "choices": [ { "value": "GET", "title": "GET" }, { "value": "POST", "title": "POST" } ] }, "use_request_body": { "title": "Use Request Body on Login", "description": "Use a request body to send login credentials.", "type": "boolean" }, "request_template": { "title": "Request Template for POST requests", "description": "A request template that will be used for POST requests.", "type": "string" }, "session_expire_minutes": { "title": "Session Expire Time (min)", "description": "The amount of time a session is valid specifiec in minutes.", "type": "integer" }, "session_headers": { "title": "Headers", "description": "Session headers to include for all requests.", "type": "array", "items": { "type": "object", "properties": { "session_header_name": { "title": "Header Name", "description": "Name of session request header, e.g. Cookie.", "type": "string" }, "session_header_value": { "title": "Header Value", "description": "Value of session request header, e.g. session=12345.", "type": "string" } } } } } } }, "schema_version": "0.0" }
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get the GUI Add form. | GET | /api/data/Pexip/add/ |
|
The GUI Add form of data/Pexip 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/data/Pexip | 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/data/Pexip/ | hierarchy=[hierarchy] | {"hrefs":["/api/data/Pexip/[pkid1]", "/api/data/Pexip/[pkid2]", ...]} |
GET http://[host-proxy]/api/data/Pexip/?hierarchy=[hierarchy]&format=json
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Bulk Modify | GET | /api/data/Pexip/bulk_update/?schema=&schema_rules=true |
|
|
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Bulk Modify | POST | /api/data/Pexip/bulk_update/ |
|
For example: {"data":{"name":"value"}, "meta":{}, "request_meta":{ "hrefs":["/api/v0/data/Pexip/[pkid1]", "/api/v0/data/Pexip/[pkid2]",...]}} |
GET http://[host-proxy]/api/data/Pexip/?hierarchy=[hierarchy]&format=json
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Get a selected [export_format] of the schema and instances [pkid1], [pkid2],... of data/Pexip; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | POST | /api/data/Pexip/export/ |
|
{ "hrefs":["/api/data/Pexip/[pkid1]", "/api/data/Pexip/[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 data/Pexip and the JSON format can be used to import instances of data/Pexip.
GET http://[host-proxy]/api/data/Pexip/?hierarchy=[hierarchy]
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get a compressed format of the Bulk Load spreadsheet template for data/Pexip | POST | /api/data/Pexip/export_bulkload_template/ |
|
The response is an attachment of the format: filetype_bulkloadsheet.xlsx.gz |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Configuration Template | GET | /api/data/Pexip/configuration_template/ | hierarchy=[hierarchy] |
|
POST http://[host-proxy]/api/data/ConfigurationTemplate/?hierarchy=[hierarchy]
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Field Display Policy | GET | /api/data/Pexip/field_display_policy/ | hierarchy=[hierarchy] |
|
POST http://[host-proxy]/api/data/FieldDisplayPolicy/?hierarchy=[hierarchy]
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Migration Template | GET | /api/data/Pexip/migration/ |
|
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
List | GET | /api/data/Pexip/ |
|
The data/Pexip schema and all instances as JSON. |
(The list will return 0 to 3 data/Pexip instances)
{ "pagination": { "skip": 0, "limit": 3, "maximum_limit": 2000, "total": 0, "total_limit": null, "order_by": "name", "direction": "asc", "current": "/api/data/Pexip/?skip=0&limit=3&order_by=name&direction=asc&traversal=down" }, "operations": [ "field_display_policy", "update", "help", "remove", "move", "add", "export", "list", "configuration_template", "get", "bulk_update_form", "migration", "transform", "export_bulkload_template" ], "meta": { "model_type": "data/Pexip", "summary_attrs": [ { "name": "name", "title": "Name" }, { "name": "description", "title": "Description" }, { "name": "version", "title": "Version" }, { "name": "hierarchy_friendly_name", "title": "Located At", "allow_filtering": true } ], "tagged_versions": [], "tags": [], "title": "?", "business_key": { "unique": [ "name" ], "hierarchy": true }, "api_version": "21.2", "cached": true, "references": { "children": [], "parent": [ { "href": "/api/data/HierarchyNode/6t0ggef2c0deab00hb595101", "pkid": "6t0ggef2c0deab00hb595101" } ], "device": [ { "href": "", "pkid": "" } ], "foreign_key": [] }, "model_specific_actions": [ "add", "bulk_update_form", "clone", "configuration_template", "export", "export_bulkload_template", "field_display_policy", "get", "help", "import", "list", "migration", "remove", "test_connect", "update" ], "schema_version": "0.0", "actions": [ { "add": { "method": "GET", "class": "add", "href": "/api/data/Pexip/add/?hierarchy=[hierarchy]", "support_async": false, "title": "Add" } }, { "remove": { "method": "DELETE", "class": "delete", "href": "/api/data/Pexip/?hierarchy=[hierarchy]", "support_async": true, "title": "Delete" } }, { "bulk_update_form": { "method": "GET", "class": "update", "href": "/api/data/Pexip/bulk_update/?hierarchy=[hierarchy]&schema=&schema_rules=true", "support_async": false, "title": "Bulk Modify" } }, { "export": { "method": "POST", "class": "export", "href": "/api/data/Pexip/export/?hierarchy=[hierarchy]", "support_async": false, "title": "Export", "view": "/api/view/ExportData/add/?auth_token=[authtoken], "submit": "payload" } }, { "export_bulkload_template": { "method": "POST", "class": "bulkload_template", "href": "/api/data/Pexip/export_bulkload_template/?hierarchy=[hierarchy]", "support_async": false, "title": "Export Bulk Load Template" } }, { "configuration_template": { "method": "GET", "class": "config", "href": "/api/data/Pexip/configuration_template/?hierarchy=[hierarchy]", "support_async": false, "title": "Configuration Template" } }, { "field_display_policy": { "method": "GET", "class": "display_policy", "href": "/api/data/Pexip/field_display_policy/?hierarchy=[hierarchy]", "support_async": false, "title": "Field Display Policy" } }, { "migration": { "method": "GET", "class": "migration", "href": "/api/data/Pexip/migration/?hierarchy=[hierarchy]", "support_async": false, "title": "Migration Template" } }, { "list": { "method": "GET", "class": "list", "href": "/api/data/Pexip/?hierarchy=[hierarchy]", "support_async": false, "title": "List" } }, { "help": { "method": "GET", "class": "help", "href": "/api/data/Pexip/help?hierarchy=[hierarchy]", "support_async": false, "title": "Help" } } ] }, "resources": [] }
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get the on-line Help for data/Pexip. | GET | /api/data/Pexip/help | hierarchy=[hierarchy] | On-line help of Model ref.: data/Pexip as HTML |
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Modify | PUT | /api/data/Pexip/[pkid] | hierarchy=[hierarchy] | (For payload specification) |
For Bulk modification, refer to the Bulk Modify section.
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Delete | DELETE | /api/data/Pexip/[pkid] | hierarchy=[hierarchy] |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Clone instance with [pkid]. The schema rules are applied. | GET | /api/data/Pexip/[pkid]/clone/?schema=&schema_rules=true |
|
A JSON payload with:
|
GET http://[host-proxy]/api/data/Pexip/?hierarchy=[hierarchy]&format=json
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Test Connection | POST | /api/data/Pexip/[pkid]/test_connect | hierarchy=[hierarchy] | If payload required: |
Task | Call | URL | Parameters | Payload |
---|---|---|---|---|
Import | POST | /api/data/Pexip/[pkid]/import | hierarchy=[hierarchy] | If payload required: |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get a selected [export_format] of the schema and a single instance with [pkid] of data/Pexip; optionally with tag_version at [version] and Configuration Template as [configtemplate]. | GET | /api/data/Pexip/[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 data/Pexip and the JSON format can be used to import instances of data/Pexip.
For Bulk Export, refer to the Bulk Export section.
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Get | GET | /api/data/Pexip/[pkid] | hierarchy=[hierarchy] | The data/Pexip instance with [pkid]. |
Task | Call | URL | Parameters | Response |
---|---|---|---|---|
Help | GET | /api/data/Pexip/[pkid]/help | hierarchy=[hierarchy] | The on-line Help for data/Pexip. |