[
  {
    "name": "memory",
    "description": "In-memory db",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "localStorage": {
        "type": "string",
        "description": "window.localStorage key to use for persistence (browser only)"
      },
      "file": {
        "type": "string",
        "description": "Full path to file for persistence (server only)"
      }
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "db2",
    "description": "IBM DB2",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "dsn": {
        "type": "string",
        "description": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-db2",
      "version": "^1.0.0"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "dashdb",
    "description": "IBM DashDB",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "dsn": {
        "type": "string",
        "description": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-dashdb",
      "version": "^1.0.0"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "mqlight",
    "description": "IBM MQ Light",
    "baseModel": "Model",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "service": {
        "type": "string",
        "description": "URL string for MQ Light service"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      }
    },
    "package": {
      "name": "loopback-connector-mqlight",
      "version": "^1.0.0"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "cloudant",
    "description": "IBM Cloudant DB",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "url": {
        "type": "string",
        "description": "Connection String url to override other settings (eg: https://username:password@host)"
      },
      "database": {
        "type": "string"
      },
      "username": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "modelIndex": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-cloudant",
      "version": "^1.0.4"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "db2z",
    "description": "IBM DB2 for z/OS",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "dsn": {
        "type": "string",
        "description": "Connection String dsn to override other settings (eg: DATABASE=MY_DB;HOSTNAME=MY_HOST;PORT=MY_PORT;PROTOCOL=TCPIP;UID=MY_UID;PWD=MY_PWD))"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-db2z",
      "version": "^1.0.0"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "mongodb",
    "description": "MongoDB",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": true
    },
    "settings": {
      "url": {
        "type": "string",
        "description": "Connection String url to override other settings (eg: mongodb://username:password@hostname:port/database)"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-mongodb",
      "version": "^1.4"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "mysql",
    "description": "MySQL",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": true,
      "migration": true
    },
    "settings": {
      "url": {
        "type": "string",
        "description": "Connection String url to override other settings (eg: mysql://user:pass@host/db)"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-mysql",
      "version": "^2.2"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "postgresql",
    "description": "PostgreSQL",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": true,
      "migration": true
    },
    "settings": {
      "url": {
        "type": "string",
        "description": "Connection String url to override other settings (eg: postgres://username:password@localhost/database)"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-postgresql",
      "version": "^2.4"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "oracle",
    "description": "Oracle",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": true,
      "migration": true
    },
    "settings": {
      "tns": {
        "type": "string",
        "description": "Connection String tns (eg: DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MY_HOST)(PORT=MY_PORT))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MY_DB)))"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-oracle",
      "version": "^2.4"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "mssql",
    "description": "Microsoft SQL",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": true,
      "migration": true
    },
    "settings": {
       "url": {
        "type": "string",
        "description": "Connection String url to override other settings (eg: mssql://username:password@localhost/database)"
      },
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-mssql",
      "version": "^2.5"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "rest",
    "description": "REST services",
    "baseModel": "Model",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "baseURL": {
        "type": "string",
        "description": "Base URL for the REST service"
      },
      "options": {
        "type": "object",
        "description": "Default options for the request"
      },
      "operations": {
        "type": "array",
        "description": "An array of operation templates"
      },
      "crud": {
        "type": "boolean",
        "default": false,
        "description": "Use default CRUD mapping"
      }
    },
    "package": {
      "name": "loopback-connector-rest",
      "version": "^2.0"
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "soap",
    "description": "SOAP webservices",
    "baseModel": "Model",
    "features": {
      "discovery": false,
      "migration": false
    },
    "package": {
      "name": "loopback-connector-soap",
      "version": "^2.4"
    },
    "settings": {
      "url": {
        "type": "string",
        "description": "URL to the SOAP web service endpoint"
      },
      "wsdl": {
        "type": "string",
        "description": "HTTP URL or local file system path to the WSDL file"
      },
      "remotingEnabled": {
        "type": "boolean",
        "description": "Expose operations as REST APIs"
      },
      "operations": {
        "type": "object",
        "description": "Maps WSDL binding operations to Node.js methods"
      }
    },
    "supportedByStrongLoop": true
  },
  {
    "name": "couchbase",
    "description": "Couchbase",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "n1qlport": {
        "type": "number"
      },
      "name": {
        "type": "string",
        "description": "The name of the datasource"
      },
      "connectionTimeout": {
        "type": "number"
      },
      "operationTimeout": {
        "type": "number"
      },
      "env": {
        "type": "string",
        "description": "Environment variable for debugging"
      }
    },
    "package": {
      "name": "loopback-connector-couchbase",
      "version": "^1.0"
    },
    "supportedByStrongLoop": false
  },
  {
    "name": "neo4j",
    "description": "Neo4j",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "package": {
      "name": "loopback-connector-neo4j",
      "version": "^0.1"
    },
    "supportedByStrongLoop": false
  },
  {
    "name": "kafka",
    "description": "Kafka",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": false,
      "migration": false
    },
    "package": {
      "name": "loopback-connector-kafka",
      "version": "^0.2"
    },
    "supportedByStrongLoop": false
  },
  {
    "name": "saphana",
    "description": "SAP HANA",
    "baseModel": "PersistedModel",
    "features": {
      "discovery": true,
      "migration": true
    },
    "settings": {
      "host": {
        "type": "string"
      },
      "port": {
        "type": "number"
      },
      "user": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "display": "password"
      },
      "database": {
        "type": "string"
      }
    },
    "package": {
      "name": "loopback-connector-saphana",
      "version": "^0.7"
    },
    "supportedByStrongLoop": false
  },
  {
    "name": "mail",
    "description": "Email",
    "baseModel": "Email",
    "features": {
      "discovery": false,
      "migration": false
    },
    "settings": {
      "transports": {
        "type": "array",
        "description": "An array of transport configuration objects"
      }
    },
    "supportedByStrongLoop": true
  }
]
