[Index]

Model: data/DeviceModel

Describes a Device Model which maps to API endpoints of some external application (device)

Model Details

Title Description Details
Name * Name of this Device Model and resulting model type i.e. device/<Device Type>/<Name>
  • Field Name: name
  • Type: String
Documentation Documentation text for this model
  • Field Name: documentation
  • Type: String
Version * Version of this model
  • Field Name: version
  • Type: String
Device Type * Device type for e.g. device/facebook
  • Field Name: device_type
  • Type: String
Primary Key Field * This is the field returned by an add operation that uniquely identifies the created entity for e.g. id
  • Field Name: primary_key
  • Type: String
Meta Information Meta information for this Device Model
  • Field Name: Meta
  • Type: Object
Summary Attributes Summary attributes for this model. This defines the data returned in API list requests.
  • Field Name: summary_attrs.[n]
  • Type: Array
API Operations List of API endpoint definitions as they map to model operations
  • Field Name: api_operations.[n]
  • Type: Array
Action * Name of the device model operation for e.g. add
  • Field Name: Meta.api_operations.[n].action
  • Type: String
URI URI for the API request
  • Field Name: Meta.api_operations.[n].uri
  • Type: String
Target Target of this operation Default: HTTP
  • Field Name: Meta.api_operations.[n].target
  • Type: String
  • Default: HTTP
  • Choices: ["HTTP", "Browser", "SOAP"]
Response Format Response format in case of HTTP Target Default: JSON
  • Field Name: Meta.api_operations.[n].response_format
  • Type: String
  • Default: JSON
  • Choices: ["JSON", "XML"]
HTTP Method * HTTP method for API request Default: get
  • Field Name: Meta.api_operations.[n].http_method
  • Type: String
  • Default: get
  • Choices: ["GET", "POST", "PATCH", "PUT", "DELETE"]
Response Code Template Jinja template for mapping API endpoint specific error/status response
  • Field Name: Meta.api_operations.[n].response_code_template
  • Type: String
Request Headers HTTP request headers to send with API operation request. Takes precedence over default request headers specified on related Connection Parameters Type instance.
  • Field Name: request_headers.[n]
  • Type: Array
Name * Name of HTTP request header, e.g. Accept.
  • Field Name: Meta.api_operations.[n].request_headers.[n].name
  • Type: String
Value * Value of HTTP request header, e.g. text/plain.
  • Field Name: Meta.api_operations.[n].request_headers.[n].value
  • Type: String
Response Handlers Handlers to execute on API responses. Only those response handlers' which condition evaluate to True are executed.
  • Field Name: response_handlers.[n]
  • Type: Array
Condition * 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 }}.
  • Field Name: Meta.api_operations.[n].response_handlers.[n].condition
  • Type: String
Type * Response handler type to execute if specified condition evaluates to True, e.g. Backoff & Retry.
  • Field Name: Meta.api_operations.[n].response_handlers.[n].type
  • Type: String
  • Choices: ["Backoff & Retry", "Failure - Duplicate"]
Variables List of context variables availble to template rendering (supports Macros)
  • Field Name: variables.[n]
  • Type: Array
Name Context variable name. This will appear in the context as 'variables.<name>'
  • Field Name: Meta.api_operations.[n].variables.[n].name
  • Type: String
Value Value of this variable. This field supports Macros
  • Field Name: Meta.api_operations.[n].variables.[n].value
  • Type: String
Pre-request Calls List of API calls to make before making this request
  • Field Name: pre_request_calls.[n]
  • Type: Array
Post-request Calls List of API calls to make after making this request
  • Field Name: post_request_calls.[n]
  • Type: Array
Request Template Jinja template for API request. Maps system schema to external application schema.
  • Field Name: Meta.api_operations.[n].request_template
  • Type: String
Response Template Jinja template for API response. Maps external application schema to system schema.
  • Field Name: Meta.api_operations.[n].response_template
  • Type: String
Operations List of supported operations
  • Field Name: operations.[n]
  • Type: Array
  • Default: [u'list', u'get', u'add', u'update', u'remove', u'move', u'clone', u'export', u'export_bulkload_template', u'bulk_update_form', u'configuration_template', u'field_display_policy', u'help', u'migration', u'transform', u'tag', u'tag_version']
Instance Operations List of supported instance operations
  • Field Name: instance_operations.[n]
  • Type: Array
  • Default: [u'get']
List Operations List of supported list operations
  • Field Name: list_operations.[n]
  • Type: Array
  • Default: [u'list']
Schema * JSON schema of the model
  • Field Name: schema
  • Type: Any
API reference for data/DeviceModel