def reconfigure(self, revision=None, parameters=None, submodules=None):
        #note: be carefull refactoring this, or you might have unpredictable results
        #todo: private api seems requires at least presence of submodule names if exist
        payload = {}
        payload['parameters'] = self.parameters

        if revision:
            payload['revisionId'] = revision.id

        if submodules:
            payload['submodules'] = submodules
        if parameters is not None:
            payload['parameters'] = parameters

        resp = router.put_instance_configuration(org_id=self.organizationId, instance_id=self.instanceId, data=json.dumps(payload))
        return resp.json()
 def rename(self, name):
     payload = json.dumps({'instanceName': name})
     return router.put_instance_configuration(org_id=self.organizationId, instance_id=self.instanceId, data=payload)