docs: def get_instance(self, instance_id, **kwargs):
          """Get details about a virtual server instance.
  
          :param integer instance_id: the instance ID
          :returns: A dictionary containing a large amount of information about
                    the specified instance.
  
          Example::
  
              # Print out instance ID 12345.
              vsi = mgr.get_instance(12345)
              print vsi
  
              # Print out only FQDN and primaryIP for instance 12345
              object_mask = "mask[fullyQualifiedDomainName,primaryIpAddress]"
              vsi = mgr.get_instance(12345, mask=mask)
              print vsi
  
          """
  
          if 'mask' not in kwargs:
              kwargs['mask'] = (
                  'id,'
                  'globalIdentifier,'
                  'fullyQualifiedDomainName,'
                  'hostname,'
                  'domain,'
                  'createDate,'
                  'modifyDate,'
                  'provisionDate,'
                  'notes,'
                  'dedicatedAccountHostOnlyFlag,'
                  'privateNetworkOnlyFlag,'
                  'primaryBackendIpAddress,'
                  'primaryIpAddress,'
                  '''networkComponents[id, status, speed, maxSpeed, name,
                                       macAddress, primaryIpAddress, port,
                                       primarySubnet[addressSpace],
                                       securityGroupBindings[
                                          securityGroup[id, name]]],'''
                  'lastKnownPowerState.name,'
                  'powerState,'
                  'status,'
                  'maxCpu,'
                  'maxMemory,'
                  'datacenter,'
                  'activeTransaction[id, transactionStatus[friendlyName,name]],'
                  'lastTransaction[transactionStatus],'
                  'lastOperatingSystemReload.id,'
                  'blockDevices,'
                  'blockDeviceTemplateGroup[id, name, globalIdentifier],'
                  'postInstallScriptUri,'
                  '''operatingSystem[passwords[username,password],
                                     softwareLicense.softwareDescription[
                                         manufacturer,name,version,
                                         referenceCode]],'''
                  '''softwareComponents[
                      passwords[username,password,notes],
                      softwareLicense[softwareDescription[
                                          manufacturer,name,version,
                                          referenceCode]]],'''
                  'hourlyBillingFlag,'
                  'userData,'
                  '''billingItem[id,nextInvoiceTotalRecurringAmount,
                                 package[id,keyName],
                                 children[categoryCode,nextInvoiceTotalRecurringAmount],
                                 orderItem[id,
                                           order.userRecord[username],
                                           preset.keyName]],'''
                  'tagReferences[id,tag[name,id]],'
                  'networkVlans[id,vlanNumber,networkSpace],'
                  'dedicatedHost.id,'
                  'placementGroupId'
              )
  
          return self.guest.getObject(id=instance_id, **kwargs)