{"type":"api","title":"Update nodes","meta":{"id":"/apps/pubhub/media/crosswork-network-controller-7-1/f445c17e25a1120e8fbde4bd413083d0fd88b2b3/4ecd3a14-d0be-3ef0-ba5d-c3cd958217a7","info":{"title":"Crosswork Device Lifecycle Management (DLM) Inventory API","description":"Crosswork DLM Inventory APIs allow the user to perform CRUD operations on Crosswork Tags, Credentials, Providers and Nodes.","version":"1.0.0","contact":{"name":"Crosswork Team, Cisco","email":"support@cisco.com"},"license":{"name":"Cisco Software License Agreement","url":"https://www.cisco.com/public/sw-license-agreement.html"}},"security":[{"bearerAuth":[]}],"x-parser-conf":{"overview":{"markdownPath":"reference/INFRA/DLM/nodedbapi-overview.md"}},"swagger":"2.0","basePath":"/crosswork/inventory/v1","schemes":["http","https"],"securityDefinitions":{"bearerAuth":{"type":"apiKey","description":"bearer auth","name":"Authorization","in":"header"}}},"spec":{"summary":"Update nodes","description":"Updates the bulk of nodes in Crosswork. Complete request would fail or successed. No partial updates. This function takes the populated fields provided in the input RobotNodeData struct, and either adds or updates those fields in the Crosswork. Default values of the fields are ignored\nRequest Body: RobotNodeDataList\n - Mandatory: Valid \"Inventory Key Type\" and Key, to identify which device to update\nResponse Body: RobotNodeJob\nDEPRECATED URL : post: /v2/dlm/invmgr/nodes/put","operationId":"NodeDb_UpdateNodes","responses":{"200":{"description":"A successful response.","schema":{"type":"object","properties":{"job_id":{"type":"string","title":"Job id"},"inst_id":{"type":"string","title":"Server instance identifier"},"state":{"title":"Current State of the Job","type":"string","enum":["JOB_INVALID","JOB_REJECTED","JOB_ACCEPTED","JOB_DB_UPDATED","JOB_NOTIFICATION_PUBLISHED","JOB_COMPLETED","JOB_FAILED","JOB_RUNNING","JOB_PARTIAL","JOB_COMPLETED_WITH_WARNING"],"default":"JOB_INVALID","$$ref":"#/definitions/robotapiRobotJobState"},"type":{"type":"string","title":"Job type. Debug purpose"},"error":{"type":"string","title":"If any error"},"completion_time":{"type":"string","format":"int64","title":"Remaining time to complete"},"creation_time":{"type":"string","format":"int64","title":"Job creation time in epoch seconds"},"created_by":{"type":"string","title":"User"},"impacted_count":{"type":"integer","format":"int64","title":"Impacted nodes/tags, provider or profiles"},"impacted":{"type":"array","items":{"type":"string"},"title":"Impacted elements list"},"errors":{"type":"array","items":{"type":"string"}}},"title":"Every Action related to Inventory will have a Job","example":{"job_id":"6315b69e-0646-4714-a855-7a4e01227bc2","state":"JOB_COMPLETED","type":"1 credential(s)/ tag(s)/ provider(s)/ device(s) added successfully","completion_time":"1733908308","creation_time":"1733908308","created_by":"admin","impacted":["test"]},"$$ref":"#/definitions/robotapiRobotNodeJob"}},"default":{"description":"An unexpected error response.","schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"integer","format":"int32"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"type_url":{"type":"string"},"value":{"type":"string","format":"byte"}},"$$ref":"#/definitions/protobufAny"}}},"example":{"error":"string","code":0,"message":"string","details":[{"type_url":"string","value":"string"}]},"$$ref":"#/definitions/runtimeError"}}},"parameters":[{"name":"body","in":"body","description":"Updates the bulk of nodes request","required":true,"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"inv_key_type":{"type":"string","enum":["INVALID_TYPE","UUID","INVENTORY_ID","NODE_IP","SERIAL_NUMBER","MAC","HOST_NAME"],"default":"INVALID_TYPE","title":"Supported Inventory Key Types","$$ref":"#/definitions/robotapiRobotInvKeyType"},"inventory_id":{"type":"string","title":"Custom unique device identifier"},"node_ip":{"type":"object","properties":{"inet_af":{"type":"string","enum":["ROBOT_INET_ADDR_TYPE_NONE","ROBOT_INET_ADDR_TYPE_v4","ROBOT_INET_ADDR_TYPE_v6"],"default":"ROBOT_INET_ADDR_TYPE_NONE","title":"Robot Inet Address Family","$$ref":"#/definitions/robotapiRobotInetAddressFamily"},"inet_addr":{"type":"string"},"mask":{"type":"string"},"gateway":{"type":"string"}},"title":"Inet address","$$ref":"#/definitions/robotapiRobotInetAddr"},"uuid":{"type":"string","title":"Uuid is randomly generated by crossworks, readonly"},"mac":{"type":"string","description":"Chassis backplane Mac address."},"serial_number":{"type":"string","description":"Device Serial Number."},"host_name":{"type":"string","description":"Device Host name."},"profile":{"type":"string","description":"MUST FIELD.\nCredential Profile applicable to this device."},"reachability_state":{"title":"Reachability state","type":"string","enum":["CONN_STATE_INVALID","CONN_STATE_UNKNOWN","CONN_STATE_REACHABLE","CONN_STATE_UNREACHABLE","CONN_STATE_MAX","CONN_STATE_DEGRADED"],"default":"CONN_STATE_INVALID","$$ref":"#/definitions/robotapiRobotEntityConnectivityState"},"admin_state":{"title":"Device Admin state","type":"string","enum":["ROBOT_ADMIN_STATE_UNKNOWN","ROBOT_ADMIN_STATE_UNMANAGED","ROBOT_ADMIN_STATE_DOWN","ROBOT_ADMIN_STATE_UP"],"default":"ROBOT_ADMIN_STATE_UNKNOWN","description":"Configured state for a Device. This is set suring onboarding and can be updated as needed.","$$ref":"#/definitions/robotapiRobotNodeAdminState"},"connectivity_info":{"type":"array","items":{"type":"object","properties":{"type":{"description":"Device connectivity type.","type":"string","enum":["ROBOT_MSVC_TRANS_NONE","ROBOT_MSVC_TRANS_TCP","ROBOT_MSVC_TRANS_UDP","ROBOT_MSVC_TRANS_HTTP","ROBOT_MSVC_TRANS_HTTPS","ROBOT_MSVC_TRANS_GRPC","ROBOT_MSVC_TRANS_SSH","ROBOT_MSVC_TRANS_NETCONF","ROBOT_MSVC_TRANS_TELNET","ROBOT_MSVC_TRANS_SNMP","ROBOT_MSVC_TRANS_TL1","ROBOT_MSVC_TRANS_TL1_SECURE","ROBOT_MSVC_TRANS_ICMP","ROBOT_MSVC_TRANS_KAFKA","ROBOT_MSVC_TRANS_NATS","ROBOT_MSVC_TRANS_GNMI","ROBOT_MSVC_TRANS_GNMI_SECURE"],"default":"ROBOT_MSVC_TRANS_NONE","title":"Transport types for robot micro-services","$$ref":"#/definitions/robotapiRobotTransportType"},"ipaddrs":{"type":"array","items":{"type":"object","properties":{"inet_af":{"type":"string","enum":["ROBOT_INET_ADDR_TYPE_NONE","ROBOT_INET_ADDR_TYPE_v4","ROBOT_INET_ADDR_TYPE_v6"],"default":"ROBOT_INET_ADDR_TYPE_NONE","title":"Robot Inet Address Family","$$ref":"#/definitions/robotapiRobotInetAddressFamily"},"inet_addr":{"type":"string"},"mask":{"type":"string"},"gateway":{"type":"string"}},"title":"Inet address","$$ref":"#/definitions/robotapiRobotInetAddr"},"title":"V4/V6 ip address for this connectivity type"},"port":{"type":"integer","format":"int64","title":"Port for this connectivity type"},"timeout":{"type":"string","format":"uint64","title":"Timeout for this connectivity type"},"reachability_state":{"title":"Reachability Status for Transport Connection","type":"string","enum":["CONN_STATE_INVALID","CONN_STATE_UNKNOWN","CONN_STATE_REACHABLE","CONN_STATE_UNREACHABLE","CONN_STATE_MAX","CONN_STATE_DEGRADED"],"default":"CONN_STATE_INVALID","$$ref":"#/definitions/robotapiRobotEntityConnectivityState"},"reachability_state_upd_time":{"type":"string","format":"int64","description":"Reachability timestamp. Time when the reach state was updated.\nUnix epoch time in seconds."},"error":{"type":"string"},"encoding_type":{"type":"string","enum":["UNKNOWN_ENCODING_TYPE","ASCII","BYTES","PROTO","JSON","JSON_IETF","XML","YANG"],"default":"UNKNOWN_ENCODING_TYPE","$$ref":"#/definitions/robotapiEncodingType"},"single_session":{"type":"boolean"},"primary_proxy":{"type":"string"},"secondary_proxy":{"type":"string"},"retries":{"type":"integer","format":"int64","title":"Deleted as it was a mistak\nstring snmpv3_engine_id = 12;"},"fqdn":{"title":"Fully qualified domain of the entity","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/robotapiFQDN"},"disable_trap_community_check":{"type":"boolean","title":"Flag for disabling community string validation for SNMPv2"},"ReachabilityErrorRetryCount":{"type":"integer","format":"int64","title":"Retry count for the connection type"}},"$$ref":"#/definitions/robotapiRobotTransport"},"title":"List of Node Connections"},"tags":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"category":{"type":"string"},"created_by":{"type":"string"},"creation_time":{"type":"string","format":"int64"},"devices_tagged":{"type":"integer","format":"int64"}},"$$ref":"#/definitions/robotapiRobotNodeTag"},"title":"Tags this device belongs to"},"product_info":{"title":"Node Product Info","type":"object","properties":{"software_type":{"type":"string"},"software_version":{"type":"string"},"product_type":{"type":"string"},"product_family":{"type":"string"},"product_series":{"type":"string"},"manufacturer":{"type":"string"},"sys_object_id":{"type":"string"},"hw_change_timestamp":{"type":"string"},"config_change_timestamp":{"type":"string"},"capability":{"type":"array","items":{"type":"string","enum":["NONE","YANG_MDT","SCHEMA_MDT","SCHEMA_PDT","SNMP","TL1","YANG_CLI","YANG_EPNM","SNMPTRAPS","GNMI"],"default":"NONE","title":"Capabilities supported by Device","$$ref":"#/definitions/robotapiRobotNodeCapability"},"description":"Device capability. Enum of TL1, SNMP, YANG, MDT, PDT, etc."},"device_type":{"description":"Node Type. e.g. SWITCH, ROUTER..","type":"string","enum":["NODE_TYPE_UNKNOWN","NODE_TYPE_ROUTER","NODE_TYPE_SWITCH","NODE_TYPE_ROADM","NODE_TYPE_AMPLIFIER","NODE_TYPE_CBR","NODE_TYPE_TERMINAL","NODE_TYPE_TXP"],"default":"NODE_TYPE_UNKNOWN","title":"- NODE_TYPE_UNKNOWN: Not known\n - NODE_TYPE_ROUTER: Layer 3 router\n - NODE_TYPE_SWITCH: Layer 2 ethernet switch\n - NODE_TYPE_ROADM: Layer 1 optical add/drop device NCS2000\n - NODE_TYPE_AMPLIFIER: Layer 1 optical repeater/ amplifier\n - NODE_TYPE_CBR: Converged broadband router\n - NODE_TYPE_TERMINAL: Layer 1 optical add/drop device NCS1010\n - NODE_TYPE_TXP: NCS 1004 family","$$ref":"#/definitions/robotapiRobotNodeType"},"snmp_engine_id":{"type":"string"},"syslog_format":{"title":"Syslog format on the device","type":"string","enum":["RFC_INVALID","RFC_UNKNOWN","RFC_5424","RFC_3164"],"default":"RFC_INVALID","$$ref":"#/definitions/robotapiRobotSyslogFormat"}},"$$ref":"#/definitions/robotapiRobotNodeProductInfo"},"geo_info":{"title":"Geographical Info","type":"object","properties":{"coordinates":{"type":"object","properties":{"longitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"},"latitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"},"altitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"}},"$$ref":"#/definitions/robotapiRobotGeoCoordinates"},"building":{"type":"string"},"street":{"type":"string"},"city":{"type":"string"},"state":{"type":"string"},"country":{"type":"string"},"region":{"type":"string"},"zip":{"type":"string"},"range_incr":{"type":"object","properties":{"longitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"},"latitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"},"altitude":{"type":"object","properties":{"value":{"type":"number","format":"double"}},"$$ref":"#/definitions/robotapiDouble"}},"$$ref":"#/definitions/robotapiRobotGeoCoordinates","description":"Applicable only on the Request. Used only for transitional data\nto specify the increments(+/-) on the coordinates above for\nsearching the list of device in the Range."}},"$$ref":"#/definitions/robotapiRobotNodeGeoData"},"routing_info":{"title":"Routing info and Management Ip info","type":"object","properties":{"global_isis_system_id":{"type":"string"},"global_ospf_router_id":{"type":"string"},"router_loopback":{"type":"object","properties":{"inet_af":{"type":"string","enum":["ROBOT_INET_ADDR_TYPE_NONE","ROBOT_INET_ADDR_TYPE_v4","ROBOT_INET_ADDR_TYPE_v6"],"default":"ROBOT_INET_ADDR_TYPE_NONE","title":"Robot Inet Address Family","$$ref":"#/definitions/robotapiRobotInetAddressFamily"},"inet_addr":{"type":"string"},"mask":{"type":"string"},"gateway":{"type":"string"}},"title":"Inet address","$$ref":"#/definitions/robotapiRobotInetAddr"},"mgmt_intf_ip":{"type":"array","items":{"type":"object","properties":{"inet_af":{"type":"string","enum":["ROBOT_INET_ADDR_TYPE_NONE","ROBOT_INET_ADDR_TYPE_v4","ROBOT_INET_ADDR_TYPE_v6"],"default":"ROBOT_INET_ADDR_TYPE_NONE","title":"Robot Inet Address Family","$$ref":"#/definitions/robotapiRobotInetAddressFamily"},"inet_addr":{"type":"string"},"mask":{"type":"string"},"gateway":{"type":"string"}},"title":"Inet address","$$ref":"#/definitions/robotapiRobotInetAddr"}},"mgmt_vrf":{"type":"string"},"telemetry_intf_src_name":{"type":"string"},"telemetry_intf_src_vrf":{"type":"string"},"telemetry_transport_type":{"type":"string","enum":["UNKNOWN_TRANSPORT_TYPE","TCP_DIALOUT"],"default":"UNKNOWN_TRANSPORT_TYPE","$$ref":"#/definitions/robotapiTelemetryTransportType"},"telemetry_device_encoding":{"type":"string","enum":["UNKNOWN_ENCODING","GPBKV"],"default":"UNKNOWN_ENCODING","$$ref":"#/definitions/robotapiTelemetryDeviceEncoding"},"te_router_id":{"type":"string","title":"Traffic engineering router id"},"ipv6_router_id":{"type":"string"},"is_opt_out_of_mdt_collection_config_enabled":{"type":"boolean","description":"Skip collection of MDT configuration on a device."}},"$$ref":"#/definitions/robotapiRobotRoutinginfo"},"contact":{"type":"string","title":"Owner contact for this device"},"uptime":{"type":"string","title":"Device uptime"},"last_upd_time":{"type":"string","format":"int64","title":"Last time this Inventory Entry was Updated in DB"},"provider":{"type":"object","additionalProperties":{"type":"object","properties":{"provider_name":{"type":"string"},"provider_node_id":{"type":"string"},"provider":{"type":"object","properties":{"uuid":{"type":"string","title":"Internal key, mandatory field. Allocated internally on provider\ncreation. UUID is a generated value based on the name"},"name":{"type":"string","description":"User-defined key, mandatory field."},"type":{"type":"string","enum":["ROBOT_PROVIDER_NONE","ROBOT_PROVIDER_CFG_LOCAL","ROBOT_PROVIDER_CFG_GLOBAL","ROBOT_PROVIDER_INSTALL","ROBOT_PROVIDER_COMPUTE","ROBOT_PROVIDER_CFG_DIRECT","ROBOT_PROVIDER_INSTALL_DIRECT"],"default":"ROBOT_PROVIDER_NONE","title":"Provider types\nIf there is no provider for CFG_LOCAL, it drops down to configuring\ndirectly to the device","$$ref":"#/definitions/robotapiRobotProviderType"},"lock_state":{"type":"string","enum":["INVALID_STATE","UNLOCKED","LOCKED","ERRORED"],"default":"INVALID_STATE","description":"- ERRORED: Node is in error state. This would happen when LOCK\nowner does not renew or release the state within timeout","title":"Lock state for any entity","$$ref":"#/definitions/robotapiRobotEntityLockState"},"reachability_state":{"type":"string","enum":["CONN_STATE_INVALID","CONN_STATE_UNKNOWN","CONN_STATE_REACHABLE","CONN_STATE_UNREACHABLE","CONN_STATE_MAX","CONN_STATE_DEGRADED"],"default":"CONN_STATE_INVALID","title":"Derived reachability state for a device. Cannot be set by user","$$ref":"#/definitions/robotapiRobotEntityConnectivityState"},"connectivity_info":{"type":"array","items":{"type":"object","properties":{"type":{"description":"Device connectivity type.","type":"string","enum":["ROBOT_MSVC_TRANS_NONE","ROBOT_MSVC_TRANS_TCP","ROBOT_MSVC_TRANS_UDP","ROBOT_MSVC_TRANS_HTTP","ROBOT_MSVC_TRANS_HTTPS","ROBOT_MSVC_TRANS_GRPC","ROBOT_MSVC_TRANS_SSH","ROBOT_MSVC_TRANS_NETCONF","ROBOT_MSVC_TRANS_TELNET","ROBOT_MSVC_TRANS_SNMP","ROBOT_MSVC_TRANS_TL1","ROBOT_MSVC_TRANS_TL1_SECURE","ROBOT_MSVC_TRANS_ICMP","ROBOT_MSVC_TRANS_KAFKA","ROBOT_MSVC_TRANS_NATS","ROBOT_MSVC_TRANS_GNMI","ROBOT_MSVC_TRANS_GNMI_SECURE"],"default":"ROBOT_MSVC_TRANS_NONE","title":"Transport types for robot micro-services","$$ref":"#/definitions/robotapiRobotTransportType"},"ipaddrs":{"type":"array","items":{"type":"object","properties":{"inet_af":{"type":"string","enum":["ROBOT_INET_ADDR_TYPE_NONE","ROBOT_INET_ADDR_TYPE_v4","ROBOT_INET_ADDR_TYPE_v6"],"default":"ROBOT_INET_ADDR_TYPE_NONE","title":"Robot Inet Address Family","$$ref":"#/definitions/robotapiRobotInetAddressFamily"},"inet_addr":{"type":"string"},"mask":{"type":"string"},"gateway":{"type":"string"}},"title":"Inet address","$$ref":"#/definitions/robotapiRobotInetAddr"},"title":"V4/V6 ip address for this connectivity type"},"port":{"type":"integer","format":"int64","title":"Port for this connectivity type"},"timeout":{"type":"string","format":"uint64","title":"Timeout for this connectivity type"},"reachability_state":{"title":"Reachability Status for Transport Connection","type":"string","enum":["CONN_STATE_INVALID","CONN_STATE_UNKNOWN","CONN_STATE_REACHABLE","CONN_STATE_UNREACHABLE","CONN_STATE_MAX","CONN_STATE_DEGRADED"],"default":"CONN_STATE_INVALID","$$ref":"#/definitions/robotapiRobotEntityConnectivityState"},"reachability_state_upd_time":{"type":"string","format":"int64","description":"Reachability timestamp. Time when the reach state was updated.\nUnix epoch time in seconds."},"error":{"type":"string"},"encoding_type":{"type":"string","enum":["UNKNOWN_ENCODING_TYPE","ASCII","BYTES","PROTO","JSON","JSON_IETF","XML","YANG"],"default":"UNKNOWN_ENCODING_TYPE","$$ref":"#/definitions/robotapiEncodingType"},"single_session":{"type":"boolean"},"primary_proxy":{"type":"string"},"secondary_proxy":{"type":"string"},"retries":{"type":"integer","format":"int64","title":"Deleted as it was a mistak\nstring snmpv3_engine_id = 12;"},"fqdn":{"title":"Fully qualified domain of the entity","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/robotapiFQDN"},"disable_trap_community_check":{"type":"boolean","title":"Flag for disabling community string validation for SNMPv2"},"ReachabilityErrorRetryCount":{"type":"integer","format":"int64","title":"Retry count for the connection type"}},"$$ref":"#/definitions/robotapiRobotTransport"},"description":"All supported transports allowed to connect to this provider."},"profile":{"type":"string","description":"Credential Profile applicable to this provider. Mandatory field."},"provider_device_key":{"type":"string","enum":["ROBOT_PROVDEVKEY_NONE","ROBOT_PROVDEVKEY_HOST_NAME","ROBOT_PROVDEVKEY_NODE_IP","ROBOT_PROVDEVKEY_INVENTORY_ID"],"default":"ROBOT_PROVDEVKEY_NONE","title":"Key types used for generating UUID for Provider","$$ref":"#/definitions/robotapiRobotProviderDeviceKey"},"last_upd_time":{"type":"string","format":"int64","description":"Last time this Provider Entry was Updated in DB.\nUnix time in seconds."},"last_reach_time":{"type":"string","format":"int64","description":"Last time this provider was determined to be reachable.\nUnix time in seconds."},"supported_models":{"type":"array","items":{"type":"object","properties":{"model_prefix":{"type":"string","title":"Yang model prefix e.g. Cisco-IOS-XR, Cisco-NX-OS, Cisco-IOS-XE"},"model_version":{"type":"string","title":"Yang model version"}},"$$ref":"#/definitions/robotapiSupportedModels"},"title":"provider models"},"family":{"description":"Provider Family. Not supoorted YET.","type":"string","enum":["ROBOT_PROVIDER_UNKNOWN","ROBOT_PROVIDER_EPNM","ROBOT_PROVIDER_NSO","ROBOT_PROVIDER_WAE","ROBOT_PROVIDER_CSM","ROBOT_PROVIDER_XTC","ROBOT_PROVIDER_SYSLOG_STORAGE","ROBOT_PROVIDER_SR_PCE","ROBOT_PROVIDER_ALERT","ROBOT_PROVIDER_DESTINATION","ROBOT_PROVIDER_OPTIMA","ROBOT_PROVIDER_PROXY","ROBOT_PROVIDER_ONC","ROBOT_PROVIDER_ACCEDIAN_PROXY"],"default":"ROBOT_PROVIDER_UNKNOWN","title":"Provider Family types","$$ref":"#/definitions/robotapiRobotProviderFamily"},"properties":{"type":"object","additionalProperties":{"type":"string"},"title":"map to configure provider specific properties as key, value pairs"},"cfs":{"type":"boolean","title":"Is CFS node"},"certificate_name":{"type":"string","title":"provider ceretificate name"},"sitelocation":{"type":"string","title":"active NSO site location, discovered/read-only parameter applicable only in geo deployments"}},"$$ref":"#/definitions/robotapiRobotProviderData"},"provider_params":{"type":"object","additionalProperties":{"type":"string"}}},"$$ref":"#/definitions/robotapiRobotNodeCustomProvider"},"title":"List of providers - one per type strictly"},"reachability_check":{"type":"string","enum":["REACH_CHECK_NONE","REACH_CHECK_DISABLE","REACH_CHECK_ENABLE"],"default":"REACH_CHECK_NONE","$$ref":"#/definitions/robotapiRobotReachCheck"},"reachability_state_upd_time":{"type":"string","format":"int64"},"operational_state":{"title":"Device operational state -readonly","type":"string","enum":["ROBOT_OPER_STATE_UNKNOWN","ROBOT_OPER_STATE_UNMANAGED","ROBOT_OPER_STATE_ADMIN_DOWN","ROBOT_OPER_STATE_CHECKING","ROBOT_OPER_STATE_OK","ROBOT_OPER_STATE_ERROR","ROBOT_OPER_STATE_LOCKED","ROBOT_OPER_STATE_DELETING"],"default":"ROBOT_OPER_STATE_UNKNOWN","$$ref":"#/definitions/robotapiRobotNodeOperationalState"},"lock_status":{"type":"object","properties":{"lock_id":{"type":"string"},"state":{"type":"string","enum":["INVALID_STATE","UNLOCKED","LOCKED","ERRORED"],"default":"INVALID_STATE","description":"- ERRORED: Node is in error state. This would happen when LOCK\nowner does not renew or release the state within timeout","title":"Lock state for any entity","$$ref":"#/definitions/robotapiRobotEntityLockState"},"owner":{"type":"string"},"start_time":{"type":"string","format":"int64"},"end_time":{"type":"string","format":"int64"}},"$$ref":"#/definitions/robotapiRobotNodeLockStatus"},"errors":{"type":"array","items":{"type":"string"},"title":"List of errors for the node - readonly"},"state_map":{"type":"object","additionalProperties":{"type":"object","properties":{"element":{"type":"string","enum":["UNSUPPORTED","REACHABILITY","DISCOVERY","CLOCK_DRIFT","LOCK","SYNC"],"default":"UNSUPPORTED","$$ref":"#/definitions/robotapiRobotNodeStateElement"},"value":{"type":"string","enum":["UNKNOWN","UP","DOWN","DEGRADE","ERROR","DISABLE"],"default":"UNKNOWN","$$ref":"#/definitions/robotapiState"},"last_updated_time":{"type":"string","format":"int64"},"next_check_time":{"type":"string","format":"int64"},"info":{"type":"string"}},"$$ref":"#/definitions/robotapiCurrentState"}},"Inventory":{"type":"object","properties":{"Interfaces":{"type":"array","items":{"type":"object","properties":{"Name":{"type":"string"},"AdminState":{"type":"string","enum":["Unknown","Up","Down"],"default":"Unknown","$$ref":"#/definitions/robotapiRobotNodeInterfaceStatus"},"OperState":{"type":"string","enum":["Unknown","Up","Down"],"default":"Unknown","$$ref":"#/definitions/robotapiRobotNodeInterfaceStatus"},"MAC":{"type":"string"}},"$$ref":"#/definitions/robotapiRobotNodeInterface"}},"tables":{"type":"object","additionalProperties":{"type":"object","properties":{"Name":{"type":"string"},"records":{"type":"array","items":{"type":"object","properties":{"data":{"type":"object","additionalProperties":{"type":"string"}}},"$$ref":"#/definitions/robotapiRobotRecord"}}},"$$ref":"#/definitions/robotapiRobotTable"}},"sys_desc":{"type":"string"},"sys_location":{"type":"string"},"architecture":{"type":"string"},"cli_cache_enabled":{"type":"boolean"},"created_by":{"type":"string"},"gnmi_preffered":{"type":"boolean"}},"$$ref":"#/definitions/robotapiRobotNodeInventory"},"dg_uuid":{"type":"string","title":"RobotDataGateway mapped_dg = 27;"},"providers_family":{"type":"object","additionalProperties":{"type":"object","properties":{"providers":{"type":"object","additionalProperties":{"type":"object","properties":{"provider_name":{"type":"string"},"provider_node_id":{"type":"string"},"provider_uuid":{"type":"string"},"provider_params":{"type":"object","additionalProperties":{"type":"string"}}},"$$ref":"#/definitions/robotapiRobotNodeProvider"}}},"$$ref":"#/definitions/robotapiRobotProviderFamilyGroup"}},"direct_access":{"title":"This attribute is only for internal use by scale testing. Not exposed via API/GUI/Swagger docs","type":"string","enum":["NOT_ALLOWED","ALLOWED"],"default":"NOT_ALLOWED","$$ref":"#/definitions/robotapiDirectAccess"},"dg_name":{"type":"string"},"nso_state":{"type":"string","enum":["INVALID_NSO_OPER_STATE","ASSOCIATED","NOT_ASSOCIATED","MATCH","NO_MATCH","ONBOARD_FAIL","FETCH_SSH_KEYS_SCHEDULED","FETCH_SSH_KEYS_STARTED","FETCH_SSH_KEYS_FAILED","CONNECT_SCHEDULED","CONNECT_STARTED","CONNECT_FAILED","SYNC_FROM_SCHEDULED","SYNC_FROM_STARTED","SYNC_TO_SCHEDULED","SYNC_TO_STARTED","SYNCED","SYNC_FAILED","CHECK_SYNC_SCHEDULED","CHECK_SYNC_STARTED","NOT_SYNCED","COMPARE_CONFIG_SCHEDULED","COMPARE_CONFIG_STARTED"],"default":"INVALID_NSO_OPER_STATE","$$ref":"#/definitions/robotapiNsoDeviceOperState"},"nso_service_state":{"type":"object","additionalProperties":{"type":"string","enum":["INVALID_NSO_SERVICE_STATE","REQUIRED","NOT_REQUIRED","SCHEDULED","DEPLOYING","DEPLOYED","DEPLOY_ERROR","CLEANUP_REQUIRED","CLEANUP_SCHEDULED","CLEANING","CLEAN_ERROR"],"default":"INVALID_NSO_SERVICE_STATE","$$ref":"#/definitions/robotapiNsoServiceState"}},"NsoMsg":{"type":"string"},"encryption":{"type":"string"},"nso_timestamp":{"type":"string","format":"int64"},"tag_names":{"type":"array","items":{"type":"string"},"title":"Tags names this device belongs to"},"device_fqdn":{"title":"Device fdqn","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/robotapiFQDN"},"disable_static_route":{"type":"boolean"}},"$$ref":"#/definitions/robotapiRobotNodeData"},"description":"List of Node Data."},"user":{"type":"string"},"criteria":{"type":"string"}},"$$ref":"#/definitions/robotapiRobotNodeDataList"}}],"tags":["NodeDb"],"__originalOperationId":"NodeDb_UpdateNodes","consumes":["application/json"],"produces":["application/json"],"security":[{"bearerAuth":[]}],"method":"put","path":"/nodes"}}