{"type":"api","title":"Get Organization Switch Devices Software Update Statuses By Device","meta":{"id":"/apps/pubhub/media/Meraki-Dashboard-API-v1-Documentation/9d30a16886a116eb6fb996e5d66f67d0df0da886/906c5292-7ca5-3d85-bb6d-da1ee73c8be6","info":{"title":"Meraki Dashboard API","description":"A RESTful API to programmatically manage and monitor Cisco Meraki networks at scale.\n\n\u003e Date: 16 October, 2026\n\u003e\n\u003e [Recent Updates](https://meraki.io/whats-new/)\n\n---\n\n[API Documentation](https://meraki.io/api)\n\n[Community Support](https://meraki.io/community)\n\n[Meraki Homepage](https://www.meraki.com)\n","contact":{"name":"Meraki Developer Community","url":"https://meraki.io/community"},"version":"v1.75.1-beta.0"},"security":[{"meraki_api_key":[]},{"bearerAuth":[]},{"oauth2":[]}],"tags":[{"name":"organizations"},{"name":"networks"},{"name":"devices"},{"name":"insight"},{"name":"wireless"},{"name":"camera"},{"name":"appliance"},{"name":"switch"},{"name":"cellularGateway"},{"name":"sm"},{"name":"sensor"},{"name":"administered"},{"name":"campusGateway"},{"name":"users"},{"name":"wirelessController"},{"name":"spaces"},{"name":"support"},{"name":"assistant"},{"name":"accelerometer"},{"name":"accessControlLists"},{"name":"accessGroups"},{"name":"accessPolicies"},{"name":"account"},{"name":"accounts"},{"name":"aclHitCount"},{"name":"acls"},{"name":"actionBatches"},{"name":"activities"},{"name":"adaptivePolicy"},{"name":"adaptivePolicyGroups"},{"name":"addressFamilies"},{"name":"addresses"},{"name":"administrators"},{"name":"admins"},{"name":"afc"},{"name":"aggregated"},{"name":"airMarshal"},{"name":"alertTypes"},{"name":"alerts"},{"name":"allowlist"},{"name":"alternateManagementInterface"},{"name":"analytics"},{"name":"api"},{"name":"apiRequests"},{"name":"apnsCert"},{"name":"apple"},{"name":"appliances"},{"name":"application"},{"name":"applicationCategories"},{"name":"applicationUsage"},{"name":"applications"},{"name":"areas"},{"name":"arpInspection"},{"name":"arpTable"},{"name":"artifacts"},{"name":"assetTracking"},{"name":"assets"},{"name":"assignments"},{"name":"association"},{"name":"attributes"},{"name":"auth"},{"name":"authZones"},{"name":"authentication"},{"name":"authenticationToken"},{"name":"authorities"},{"name":"authorization"},{"name":"authorizations"},{"name":"autoLocate"},{"name":"autoRf"},{"name":"automate"},{"name":"automations"},{"name":"autonomousSystems"},{"name":"autovpn"},{"name":"availabilities"},{"name":"azure"},{"name":"bands"},{"name":"bandwidthUsageHistory"},{"name":"batch"},{"name":"batchCreate"},{"name":"batches"},{"name":"bgp"},{"name":"bgpSessionStatus"},{"name":"billing"},{"name":"blink"},{"name":"bluetooth"},{"name":"bluetoothClients"},{"name":"bonjourForwarding"},{"name":"boots"},{"name":"boundaries"},{"name":"brandingPolicies"},{"name":"buildings"},{"name":"bulk"},{"name":"bulkAdd"},{"name":"bulkCreate"},{"name":"bulkDelete"},{"name":"bulkEdit"},{"name":"bulkEnrollment"},{"name":"bulkRemove"},{"name":"bulkUpdate"},{"name":"bulkUpload"},{"name":"byAdmin"},{"name":"byApplication"},{"name":"byAutonomousSystem"},{"name":"byBand"},{"name":"byBoundary"},{"name":"byClient"},{"name":"byClientOs"},{"name":"byClientType"},{"name":"byCluster"},{"name":"byDevice"},{"name":"byEnergyUsage"},{"name":"byFilterList"},{"name":"byGroup"},{"name":"byInterval"},{"name":"byMetric"},{"name":"byModel"},{"name":"byNetwork"},{"name":"byNewDevice"},{"name":"byOperation"},{"name":"byPeerGroup"},{"name":"byPipeline"},{"name":"byPort"},{"name":"byPrefixList"},{"name":"byProfile"},{"name":"byRouter"},{"name":"byServer"},{"name":"byServerType"},{"name":"bySite"},{"name":"bySourceIp"},{"name":"bySsid"},{"name":"byStack"},{"name":"byStatus"},{"name":"bySwitch"},{"name":"bySwitchProfile"},{"name":"byTunnel"},{"name":"byType"},{"name":"byUsage"},{"name":"byUtilization"},{"name":"byVlan"},{"name":"byVrf"},{"name":"bypassActivationLockAttempts"},{"name":"cableTest"},{"name":"callbacks"},{"name":"candidates"},{"name":"capabilities"},{"name":"captures"},{"name":"categories"},{"name":"cellular"},{"name":"cellularFirewallRules"},{"name":"cellularUsageHistory"},{"name":"certificateAuthority"},{"name":"certificates"},{"name":"certs"},{"name":"changeHistory"},{"name":"changelogs"},{"name":"channelAvailability"},{"name":"channelUtilization"},{"name":"channelUtilizationHistory"},{"name":"channels"},{"name":"chat"},{"name":"checkup"},{"name":"claim"},{"name":"claimKey"},{"name":"clientCountHistory"},{"name":"clientExclusion"},{"name":"clients"},{"name":"cloud"},{"name":"cloudEnrollment"},{"name":"clusters"},{"name":"commands"},{"name":"communicationPlans"},{"name":"completions"},{"name":"compliance"},{"name":"compute"},{"name":"config"},{"name":"configTemplates"},{"name":"configurationChanges"},{"name":"configurations"},{"name":"configure"},{"name":"configuredDevices"},{"name":"connectedCountHistory"},{"name":"connectionStats"},{"name":"connections"},{"name":"connectivity"},{"name":"connectivityEvents"},{"name":"connectivityMonitoringDestinations"},{"name":"connectors"},{"name":"contentFiltering"},{"name":"contents"},{"name":"controller"},{"name":"correlated"},{"name":"coterm"},{"name":"coverage"},{"name":"cpu"},{"name":"credentials"},{"name":"crls"},{"name":"current"},{"name":"custom"},{"name":"customAnalytics"},{"name":"customPerformanceClasses"},{"name":"cycle"},{"name":"dailyConsumerMetrics"},{"name":"data"},{"name":"dataRate"},{"name":"dataRateHistory"},{"name":"defaultContent"},{"name":"delegated"},{"name":"deltas"},{"name":"deploy"},{"name":"deployable"},{"name":"deployed"},{"name":"deployments"},{"name":"descriptors"},{"name":"desktopLogs"},{"name":"details"},{"name":"detections"},{"name":"deviceCategories"},{"name":"deviceCommandLogs"},{"name":"deviceProfiles"},{"name":"deviceTypeGroupPolicies"},{"name":"dhcp"},{"name":"dhcpLeases"},{"name":"dhcpServerPolicy"},{"name":"dictionaries"},{"name":"disconnect"},{"name":"discover"},{"name":"discovered"},{"name":"discovery"},{"name":"disenrollments"},{"name":"dns"},{"name":"domains"},{"name":"doorLocks"},{"name":"download"},{"name":"downloadUrl"},{"name":"dscpTaggingOptions"},{"name":"dscpToCosMappings"},{"name":"eapOverride"},{"name":"earlyAccess"},{"name":"electronicShelfLabel"},{"name":"eligible"},{"name":"enrollable"},{"name":"enrollments"},{"name":"entitlements"},{"name":"entries"},{"name":"eox"},{"name":"errors"},{"name":"esims"},{"name":"ethernet"},{"name":"eventLogs"},{"name":"eventTypes"},{"name":"events"},{"name":"exclusions"},{"name":"experience"},{"name":"extensions"},{"name":"facets"},{"name":"failedConnections"},{"name":"failover"},{"name":"failures"},{"name":"featureTiers"},{"name":"features"},{"name":"feedback"},{"name":"fetchTableQuery"},{"name":"fields"},{"name":"filterLists"},{"name":"filters"},{"name":"firewall"},{"name":"firewalledServices"},{"name":"firmware"},{"name":"firmwareUpgrades"},{"name":"floorPlans"},{"name":"gateways"},{"name":"gcp"},{"name":"geolocations"},{"name":"global"},{"name":"group"},{"name":"groupPolicies"},{"name":"groups"},{"name":"health"},{"name":"healthByTime"},{"name":"healthScores"},{"name":"histogram"},{"name":"historical"},{"name":"history"},{"name":"hosts"},{"name":"hotspot20"},{"name":"httpServers"},{"name":"httpsInspection"},{"name":"httpsi"},{"name":"hubBudget"},{"name":"hubs"},{"name":"iam"},{"name":"identities"},{"name":"identity"},{"name":"identityPsks"},{"name":"idps"},{"name":"impacted"},{"name":"impactedDevice"},{"name":"import"},{"name":"inboundCellularFirewallRules"},{"name":"inboundFirewallRules"},{"name":"insights"},{"name":"integrate"},{"name":"integration"},{"name":"integrations"},{"name":"interconnects"},{"name":"interfaces"},{"name":"internetPolicies"},{"name":"intrusion"},{"name":"inventory"},{"name":"iot"},{"name":"ipAssignment"},{"name":"ipsec"},{"name":"ipv6"},{"name":"isolation"},{"name":"jobs"},{"name":"json"},{"name":"keys"},{"name":"l2"},{"name":"l3"},{"name":"l3FirewallRules"},{"name":"l7FirewallRules"},{"name":"lan"},{"name":"lanLink"},{"name":"lanStp"},{"name":"latency"},{"name":"latencyHistory"},{"name":"latencyStats"},{"name":"latest"},{"name":"leds"},{"name":"license"},{"name":"licenses"},{"name":"licensing"},{"name":"lines"},{"name":"linkAggregations"},{"name":"linkLayer"},{"name":"links"},{"name":"listenRanges"},{"name":"live"},{"name":"liveTools"},{"name":"lldpCdp"},{"name":"load"},{"name":"local"},{"name":"localOverrides"},{"name":"location"},{"name":"locationScanning"},{"name":"loginSecurity"},{"name":"logins"},{"name":"logs"},{"name":"lookups"},{"name":"lossAndLatencyHistory"},{"name":"lowPower"},{"name":"macTable"},{"name":"malware"},{"name":"managementInterface"},{"name":"manufacturers"},{"name":"masks"},{"name":"mcf"},{"name":"mdns"},{"name":"me"},{"name":"measurements"},{"name":"memory"},{"name":"merakiAuth"},{"name":"merakiAuthUsers"},{"name":"mesh"},{"name":"meshStatuses"},{"name":"messages"},{"name":"metrics"},{"name":"migrations"},{"name":"mirror"},{"name":"mirrors"},{"name":"mode"},{"name":"models"},{"name":"monitor"},{"name":"monitoredMediaServers"},{"name":"mostImpactedClientNetworks"},{"name":"mostImpactedNetworks"},{"name":"mostImpactedXMs"},{"name":"moves"},{"name":"mqtt"},{"name":"mqttBrokers"},{"name":"mtu"},{"name":"multicast"},{"name":"multicastForwarding"},{"name":"multicastRouting"},{"name":"nac"},{"name":"nat"},{"name":"neighbors"},{"name":"netflow"},{"name":"networkAdapters"},{"name":"networkHealth"},{"name":"networkServices"},{"name":"new"},{"name":"nodes"},{"name":"objectDetectionModels"},{"name":"offboard"},{"name":"onboard"},{"name":"onboarding"},{"name":"onboardingHistory"},{"name":"oneToManyNatRules"},{"name":"oneToOneNatRules"},{"name":"openRoaming"},{"name":"openapiSpec"},{"name":"opportunistic"},{"name":"opportunisticPcap"},{"name":"optIns"},{"name":"optimization"},{"name":"order"},{"name":"orders"},{"name":"ospf"},{"name":"ospfNeighbors"},{"name":"override"},{"name":"overrides"},{"name":"overview"},{"name":"overviews"},{"name":"owe"},{"name":"package"},{"name":"packetCapture"},{"name":"packetCaptures"},{"name":"packetLoss"},{"name":"packets"},{"name":"payloadTemplates"},{"name":"peers"},{"name":"performance"},{"name":"performanceHistory"},{"name":"permissions"},{"name":"pii"},{"name":"piiKeys"},{"name":"ping"},{"name":"pingDevice"},{"name":"pipelines"},{"name":"placement"},{"name":"planning"},{"name":"poe"},{"name":"policies"},{"name":"policy"},{"name":"policyObjects"},{"name":"portForwardingRules"},{"name":"portSchedules"},{"name":"ports"},{"name":"position"},{"name":"positions"},{"name":"power"},{"name":"powerLimits"},{"name":"powerModules"},{"name":"preferred"},{"name":"prefixLists"},{"name":"prefixes"},{"name":"priorities"},{"name":"privateApplicationGroups"},{"name":"privateApplications"},{"name":"privateResourceGroups"},{"name":"privateResources"},{"name":"productAnnouncements"},{"name":"productIntegrations"},{"name":"profiles"},{"name":"provisioning"},{"name":"publicApplications"},{"name":"push"},{"name":"qosRules"},{"name":"qualityAndRetention"},{"name":"qualityRetentionProfiles"},{"name":"queues"},{"name":"raGuardPolicy"},{"name":"radio"},{"name":"radius"},{"name":"radsec"},{"name":"ranging"},{"name":"ratePlans"},{"name":"rca"},{"name":"readings"},{"name":"reboot"},{"name":"receivers"},{"name":"recent"},{"name":"recommendations"},{"name":"records"},{"name":"redundancy"},{"name":"regions"},{"name":"regulatoryDomain"},{"name":"relationships"},{"name":"remoteAccess"},{"name":"remoteAccessLog"},{"name":"remoteAccessLogsExports"},{"name":"removedResources"},{"name":"rendezvousPoints"},{"name":"requests"},{"name":"requirements"},{"name":"responseCodes"},{"name":"rest"},{"name":"restrictions"},{"name":"retries"},{"name":"revocationLists"},{"name":"rfHealth"},{"name":"rfProfiles"},{"name":"roaming"},{"name":"roles"},{"name":"rollbacks"},{"name":"route"},{"name":"routers"},{"name":"routing"},{"name":"routingTable"},{"name":"rrm"},{"name":"rssi"},{"name":"ruleGroups"},{"name":"rules"},{"name":"rulesets"},{"name":"salesRepresentatives"},{"name":"saml"},{"name":"samlRoles"},{"name":"sase"},{"name":"scanning"},{"name":"schedules"},{"name":"scores"},{"name":"sdwan"},{"name":"sdwanmanager"},{"name":"search"},{"name":"secureClient"},{"name":"secureConnect"},{"name":"security"},{"name":"securityCenters"},{"name":"seen"},{"name":"sense"},{"name":"sentry"},{"name":"serverHealth"},{"name":"servers"},{"name":"serviceProviders"},{"name":"services"},{"name":"sessions"},{"name":"settings"},{"name":"signalQuality"},{"name":"signalQualityHistory"},{"name":"sims"},{"name":"singleLan"},{"name":"siteToSite"},{"name":"siteToSiteVpn"},{"name":"sites"},{"name":"slas"},{"name":"smDevicesForKey"},{"name":"smOwnersForKey"},{"name":"snmp"},{"name":"software"},{"name":"softwares"},{"name":"spanningTree"},{"name":"speedTest"},{"name":"speedTestResults"},{"name":"splash"},{"name":"splashAuthorizationStatus"},{"name":"splashLoginAttempts"},{"name":"split"},{"name":"spokes"},{"name":"ssids"},{"name":"stacks"},{"name":"staged"},{"name":"stages"},{"name":"states"},{"name":"static"},{"name":"staticRoutes"},{"name":"statics"},{"name":"stats"},{"name":"status"},{"name":"statuses"},{"name":"stickyEvents"},{"name":"stormControl"},{"name":"stp"},{"name":"subnetPool"},{"name":"subnets"},{"name":"subscription"},{"name":"subscriptions"},{"name":"successfulConnections"},{"name":"successfulConnects"},{"name":"summaries"},{"name":"summary"},{"name":"summaryConsumerMetrics"},{"name":"summaryPanel"},{"name":"supported"},{"name":"sustainability"},{"name":"swap"},{"name":"swaps"},{"name":"switchPortStatus"},{"name":"switches"},{"name":"sync"},{"name":"syncJobs"},{"name":"syslog"},{"name":"syslogServers"},{"name":"system"},{"name":"tags"},{"name":"targetGroups"},{"name":"targets"},{"name":"tasks"},{"name":"taxonomy"},{"name":"telemetry"},{"name":"testConnectivity"},{"name":"tests"},{"name":"themes"},{"name":"thirdPartyVPNPeers"},{"name":"thousandEyes"},{"name":"threads"},{"name":"throughputTest"},{"name":"timeToConnect"},{"name":"token"},{"name":"tokens"},{"name":"top"},{"name":"topics"},{"name":"topology"},{"name":"towers"},{"name":"traceRoute"},{"name":"traffic"},{"name":"trafficAnalysis"},{"name":"trafficHistory"},{"name":"trafficShaping"},{"name":"transceivers"},{"name":"traps"},{"name":"trustedAccessConfigs"},{"name":"trustedServers"},{"name":"tunnelCreation"},{"name":"tunnelStatus"},{"name":"tunnelable"},{"name":"tunneling"},{"name":"types"},{"name":"umbrella"},{"name":"unassigned"},{"name":"update"},{"name":"updates"},{"name":"upgrades"},{"name":"uplink"},{"name":"uplinkBandwidth"},{"name":"uplinkSelection"},{"name":"uplinks"},{"name":"uplinksLossAndLatency"},{"name":"usage"},{"name":"usageHistories"},{"name":"usageHistory"},{"name":"userAccessDevices"},{"name":"utilization"},{"name":"v4"},{"name":"values"},{"name":"versions"},{"name":"video"},{"name":"videoLink"},{"name":"videoWalls"},{"name":"vlanAssignments"},{"name":"vlanProfiles"},{"name":"vlans"},{"name":"vmx"},{"name":"vpcOnboardingBatches"},{"name":"vpcs"},{"name":"vpn"},{"name":"vpnExclusions"},{"name":"vpnFirewallRules"},{"name":"vpnPeers"},{"name":"vppAccounts"},{"name":"vrfs"},{"name":"vrrp"},{"name":"vrrpTable"},{"name":"wakeOnLan"},{"name":"warmSpare"},{"name":"warnings"},{"name":"webApps"},{"name":"webhookTests"},{"name":"webhooks"},{"name":"wired"},{"name":"wirelessControllers"},{"name":"wirelessProfiles"},{"name":"wlanLists"},{"name":"workflows"},{"name":"xdr"},{"name":"zigbee"},{"name":"zones"},{"name":"ztrIntents"}],"x-parser-conf":{"exampleAsDefault":true,"expand":0,"filterBy":{"$remoteModule":"config/filter_only_beta.js"},"groupBy":{"$remoteModule":"config/group_platform.js"},"httpBearer":{"bearerToken":"75dd5334bef4d2bc96f26138c163c0a3fa0b5ca6"},"labelConfig":{"endpoint":{"field":"operationId","format":"startCase"}},"overview":{"markdownPath":"docs/overview-early-access.md"},"serverConfig":true,"sortBy":{"$remoteModule":"config/sort_by.js"},"theme":"meraki","variables":{"networkId":"N_784752235069315754","organizationId":"1215707","serial":"QBSB-VQ3J-XZ54"}},"openapi":"3.0.1","servers":[{"url":"https://api.meraki.com/{basePath}","variables":{"basePath":{"default":"api/v1"}}}],"securitySchemes":{"meraki_api_key":{"type":"apiKey","name":"X-Cisco-Meraki-API-Key","in":"header"},"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"API Key"},"oauth2":{"type":"oauth2","description":"This API uses OAuth 2 with the authorization code grant flow. [More info](https://developer.cisco.com/meraki/api-v1/authorization/)","flows":{"authorizationCode":{"authorizationUrl":"https://as.meraki.com/oauth/authorize","tokenUrl":"https://as.meraki.com/oauth/token","scopes":{"camera:config:read":"Cameras (MV)","camera:config:write":"Cameras (MV)","camera:telemetry:read":"Cameras (MV)","camera:telemetry:write":"Cameras (MV)","dashboard:general:config:read":"Entire dashboard, excluding identity and access management","dashboard:general:config:write":"Entire dashboard, excluding identity and access management","dashboard:general:telemetry:read":"Entire dashboard, excluding identity and access management","dashboard:general:telemetry:write":"Entire dashboard, excluding identity and access management","dashboard:iam:config:read":"Dashboard related to identity and access management, including early access features","dashboard:iam:config:write":"Dashboard related to identity and access management, including early access features","dashboard:iam:telemetry:read":"Dashboard related to identity and access management, including early access features","dashboard:iam:telemetry:write":"Dashboard related to identity and access management, including early access features","dashboard:licensing:config:read":"Licensing","dashboard:licensing:config:write":"Licensing","dashboard:licensing:telemetry:read":"Licensing","dashboard:licensing:telemetry:write":"Licensing","iot:gateway:general:config:read":"Sensor Connect (IoT Control)","iot:gateway:general:config:write":"Sensor Connect (IoT Control)","iot:gateway:general:telemetry:read":"Sensor Connect (IoT Control)","iot:gateway:general:telemetry:write":"Sensor Connect (IoT Control)","iot:gateway:onboarding:config:read":"Sensor Connect (IoT Onboarding)","iot:gateway:onboarding:config:write":"Sensor Connect (IoT Onboarding)","policy:config:read":"Provides granular authorization over all global policy resources including policy objects, adaptive policy, and Organization Group Policy","policy:config:write":"Provides granular authorization over all global policy resources including policy objects, adaptive policy, and Organization Group Policy","policy:telemetry:read":"Provides granular authorization over all global policy resources including policy objects, adaptive policy, and Organization Group Policy","policy:telemetry:write":"Provides granular authorization over all global policy resources including policy objects, adaptive policy, and Organization Group Policy","sdwan:config:read":"Secure SD-WAN (MX including MXIGZ)","sdwan:config:write":"Secure SD-WAN (MX including MXIGZ)","sdwan:telemetry:read":"Secure SD-WAN (MX including MXIGZ)","sdwan:telemetry:write":"Secure SD-WAN (MX including MXIGZ)","sensor:config:read":"Sensors (MT)","sensor:config:write":"Sensors (MT)","sensor:telemetry:read":"Sensors (MT)","sensor:telemetry:write":"Sensors (MT)","sm:config:read":"Endpoint Management (SM)","sm:config:write":"Endpoint Management (SM)","sm:telemetry:read":"Endpoint Management (SM)","sm:telemetry:write":"Endpoint Management (SM)","switch:config:read":"Switches (MS)","switch:config:write":"Switches (MS)","switch:telemetry:read":"Switches (MS)","switch:telemetry:write":"Switches (MS)","wireless:config:read":"Wireless (MR)","wireless:config:write":"Wireless (MR)","wireless:telemetry:read":"Wireless (MR)","wireless:telemetry:write":"Wireless (MR)"}}}}}},"spec":{"description":"List software update statuses for Cloud Monitoring for Catalyst switches in one paginated device table. By default, every accessible eligible switch appears, including switches with no active or retained software update; those switches have update.status.value set to idle. Request filters can exclude rows. Each result combines device identity, network, current software version, software update availability, storage requirements, and current detailed update status, stage, and result. Use the software versions operation after selecting switches to discover compatible destinations independently for each selected switch. Values within one array use inclusive OR; filter dimensions combine with AND. Omitted filters apply no restriction. Inaccessible networkIds or serials are excluded, and a selection with no accessible matches returns 200 with an empty items array.","operationId":"getOrganizationSwitchDevicesSoftwareUpdateStatusesByDevice","parameters":[{"name":"organizationId","in":"path","description":"Organization ID","schema":{"type":"string"},"required":true},{"name":"perPage","in":"query","description":"The number of entries per page returned. Acceptable range is 3 - 1000. Default is 30.","schema":{"type":"integer"}},{"name":"startingAfter","in":"query","description":"A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.","schema":{"type":"string"}},{"name":"endingBefore","in":"query","description":"A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.","schema":{"type":"string"}},{"name":"sortOrder","in":"query","description":"Sorted order of entries. Order options are 'ascending' and 'descending'. Default is 'ascending'.","schema":{"type":"string","enum":["ascending","descending"]}},{"name":"networkIds","in":"query","description":"Exact network.id filters using inclusive OR. Omit for no network restriction; maximum 100.","schema":{"type":"array","items":{"type":"string"},"maxItems":100}},{"name":"serials","in":"query","description":"Exact, case-sensitive device.serial filters using inclusive OR. Omit for no serial restriction; maximum 100.","schema":{"type":"array","items":{"type":"string"},"maxItems":100}},{"name":"search","in":"query","description":"Case-insensitive partial substring match against device.name or device.serial. Serial punctuation is matched as supplied, and whitespace-separated text is treated as one substring rather than tokenized. If this scalar is repeated, only the last value is used.","schema":{"type":"string"}},{"name":"isUpdateAvailable","in":"query","description":"Exact filter for items[].isUpdateAvailable. Omit for no availability restriction; no default is applied.","schema":{"type":"boolean"}},{"name":"updateStatuses","in":"query","description":"Exact items[].update.status.value filters using inclusive OR, normalized case-insensitively to the canonical enum value. Omit for no detailed-status restriction. Detailed status values match the existing firmware-upgrade by-device API. Idle means no active or retained update. Execution progress and terminal outcomes use their existing canonical values and labels. Terminal success or failure is also reported in status.result. No default is implied.","schema":{"type":"array","items":{"type":"string","enum":["checking-in","download-complete","download-started","idle","install-started","upgrade-canceled","upgrade-complete","upgrade-failed","upgrade-retry-scheduled","upgrade-scheduled","upgrade-skipped","verification-started"]},"maxItems":12}},{"name":"updateStages","in":"query","description":"Exact items[].update.status.stage.value filters using inclusive OR, normalized case-insensitively to the canonical enum value. Omit for no execution-stage restriction. Execution-stage values: check-in, download, installation, or verification. The value is null before execution begins and after no stage can be identified. No default is implied.","schema":{"type":"array","items":{"type":"string","enum":["check-in","download","installation","verification"]},"maxItems":4}},{"name":"updateResults","in":"query","description":"Exact items[].update.status.result.value filters using inclusive OR, normalized case-insensitively to the canonical enum value. Omit for no terminal-result restriction. Terminal-result values: succeeded, skipped, canceled, or failed. The value is null until the update completes. No default is implied.","schema":{"type":"array","items":{"type":"string","enum":["canceled","failed","skipped","succeeded"]},"maxItems":4}},{"name":"currentVersionShortNames","in":"query","description":"Exact, case-sensitive currentVersion.shortName filters using inclusive OR. Omit for no current-version name restriction; maximum 100.","schema":{"type":"array","items":{"type":"string"},"maxItems":100}},{"name":"models","in":"query","description":"Exact, case-sensitive device.model filters using inclusive OR. Omit for no model restriction; maximum 100.","schema":{"type":"array","items":{"type":"string"},"maxItems":100}},{"name":"sortKey","in":"query","description":"Sort key: currentVersion orders currentVersion.shortName; device orders device.name with serial fallback; isUpdateAvailable orders false before true when ascending; model orders device.model; network orders network.name; updateStatus uses this semantic order when ascending: idle, upgrade-scheduled, upgrade-retry-scheduled, checking-in, download-started, download-complete, install-started, verification-started, upgrade-complete, upgrade-skipped, upgrade-canceled, upgrade-failed. Terminal items are then ordered by result: succeeded, skipped, canceled, then failed. Ties are resolved by device.serial. Defaults to device.","schema":{"type":"string","enum":["currentVersion","device","isUpdateAvailable","model","network","updateStatus"]}}],"responses":{"200":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"device":{"type":"object","properties":{"serial":{"type":"string","description":"Device serial number. Modular devices return the chassis serial."},"name":{"type":"string","description":"Device display name, falling back to serial."},"model":{"type":"string","description":"Device model. Modular devices return the chassis model."},"url":{"type":"string","description":"Dashboard switch-summary URL for the device."},"storage":{"type":"object","properties":{"free":{"type":"integer","description":"Current free storage reported by the device in kilobytes. Null when the device has not reported storage information.","nullable":true}},"required":["free"],"description":"Current device storage information."},"size":{"type":"object","properties":{"multiplier":{"type":"number","format":"float","minimum":1,"description":"Device-model-specific multiplier applied to the target software image size in bytes returned by the target-version operation when calculating the minimum free storage required before scheduling an update."}},"required":["multiplier"],"description":"Information used to calculate the storage required for a target software image."},"stack":{"type":"object","properties":{"id":{"type":"string","description":"Switch stack identifier, or null for a standalone device.","nullable":true},"name":{"type":"string","description":"Switch stack display name, or null for a standalone device.","nullable":true},"members":{"type":"object","properties":{"counts":{"type":"object","properties":{"total":{"type":"integer","minimum":0,"maximum":8,"description":"Total stack members from zero through 8. Zero means the device is not in a stack."}},"required":["total"],"description":"Switch stack member counts."},"items":{"type":"array","items":{"type":"object","properties":{"serial":{"type":"string","description":"Stack member serial number."},"storage":{"type":"object","properties":{"free":{"type":"integer","description":"Current free storage reported by the device in kilobytes. Null when the device has not reported storage information.","nullable":true}},"required":["free"],"description":"Current stack-member storage information."},"size":{"type":"object","properties":{"multiplier":{"type":"number","format":"float","minimum":1,"description":"Device-model-specific multiplier applied to the target software image size in bytes returned by the target-version operation when calculating the minimum free storage required before scheduling an update."}},"required":["multiplier"],"description":"Information used to calculate the storage required for a target software image on this stack member."}},"required":["serial","storage","size"]},"maxItems":8,"description":"Stack members with current free storage and model-specific image-size multipliers. Empty for a standalone device; maximum 8."},"serials":{"type":"array","items":{"type":"string"},"maxItems":8,"description":"Stack member serials. Empty for a standalone device; maximum 8."}},"required":["counts","items","serials"],"description":"Switch stack membership. Modular devices list their supervisor members."}},"required":["id","name","members"],"description":"Switch stack details. Scalar fields are null and members contains a zero count and an empty serials array when the device is not in a stack."}},"required":["serial","name","model","url","storage","size","stack"],"description":"Switch identity and stack details."},"network":{"type":"object","properties":{"id":{"type":"string","description":"Network identifier."},"name":{"type":"string","description":"Network display name."},"url":{"type":"string","description":"Dashboard device-list URL for the network."}},"required":["id","name","url"],"description":"Network containing the device."},"currentVersion":{"type":"object","properties":{"shortName":{"type":"string","description":"Device-reported software version name to pass in the currentVersionShortNames filter."}},"required":["shortName"],"description":"Software version currently reported by the device."},"isUpdateAvailable":{"type":"boolean","description":"Whether a software update is available."},"update":{"type":"object","properties":{"status":{"type":"object","properties":{"value":{"type":"string","enum":["checking-in","download-complete","download-started","idle","install-started","upgrade-canceled","upgrade-complete","upgrade-failed","upgrade-retry-scheduled","upgrade-scheduled","upgrade-skipped","verification-started"],"description":"Current detailed software update status. Detailed status values match the existing firmware-upgrade by-device API. Idle means no active or retained update. Execution progress and terminal outcomes use their existing canonical values and labels. Terminal success or failure is also reported in status.result. No default is implied."},"label":{"type":"string","description":"Display label for the current detailed software update status."},"stage":{"type":"object","properties":{"value":{"type":"string","enum":["check-in","download","installation","verification"],"description":"Execution-stage values: check-in, download, installation, or verification. The value is null before execution begins and after no stage can be identified. No default is implied.","nullable":true},"label":{"type":"string","description":"Display label for the current execution stage, or null when no stage can be identified.","nullable":true}},"required":["value","label"],"description":"Current execution stage."},"result":{"type":"object","properties":{"value":{"type":"string","enum":["canceled","failed","skipped","succeeded"],"description":"Terminal-result values: succeeded, skipped, canceled, or failed. The value is null until the update completes. No default is implied.","nullable":true},"label":{"type":"string","description":"Display label for the terminal result, or null until the update completes.","nullable":true}},"required":["value","label"],"description":"Terminal update result."},"stages":{"type":"object","properties":{"checkIn":{"type":"object","properties":{"status":{"type":"string","enum":["canceled","completed","failed","rescheduled","retrying","scheduled","skipped","started"],"description":"Stage status. Values: scheduled means waiting to start; rescheduled means a later retry is queued; started means the stage is active; retrying means a retry attempt is active; completed means the stage succeeded; skipped, canceled, and failed are also terminal stage outcomes. No default is implied; null means no state has been recorded for this stage.","nullable":true},"startedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage started, or null when it has not started.","nullable":true},"completedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage completed, or null when it has not completed.","nullable":true}},"required":["status","startedAt","completedAt"],"description":"Device check-in stage."},"download":{"type":"object","properties":{"status":{"type":"string","enum":["canceled","completed","failed","rescheduled","retrying","scheduled","skipped","started"],"description":"Stage status. Values: scheduled means waiting to start; rescheduled means a later retry is queued; started means the stage is active; retrying means a retry attempt is active; completed means the stage succeeded; skipped, canceled, and failed are also terminal stage outcomes. No default is implied; null means no state has been recorded for this stage.","nullable":true},"startedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage started, or null when it has not started.","nullable":true},"completedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage completed, or null when it has not completed.","nullable":true}},"required":["status","startedAt","completedAt"],"description":"Software image download stage."},"installation":{"type":"object","properties":{"status":{"type":"string","enum":["canceled","completed","failed","rescheduled","retrying","scheduled","skipped","started"],"description":"Stage status. Values: scheduled means waiting to start; rescheduled means a later retry is queued; started means the stage is active; retrying means a retry attempt is active; completed means the stage succeeded; skipped, canceled, and failed are also terminal stage outcomes. No default is implied; null means no state has been recorded for this stage.","nullable":true},"startedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage started, or null when it has not started.","nullable":true},"completedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage completed, or null when it has not completed.","nullable":true}},"required":["status","startedAt","completedAt"],"description":"Software installation stage."},"verification":{"type":"object","properties":{"status":{"type":"string","enum":["canceled","completed","failed","rescheduled","retrying","scheduled","skipped","started"],"description":"Stage status. Values: scheduled means waiting to start; rescheduled means a later retry is queued; started means the stage is active; retrying means a retry attempt is active; completed means the stage succeeded; skipped, canceled, and failed are also terminal stage outcomes. No default is implied; null means no state has been recorded for this stage.","nullable":true},"startedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage started, or null when it has not started.","nullable":true},"completedAt":{"type":"string","format":"date-time","description":"UTC ISO 8601 time when the stage completed, or null when it has not completed.","nullable":true}},"required":["status","startedAt","completedAt"],"description":"Software verification stage."}},"required":["checkIn","download","installation","verification"],"description":"Progress recorded for each execution stage."}},"required":["value","label","stage","result","stages"],"description":"Current detailed software update status, execution stage, terminal result, and per-stage progress."},"batchId":{"type":"string","description":"Device-scoped software update batch identifier."},"id":{"type":"string","description":"Software update identifier for the selected device and network."},"scheduledAt":{"type":"string","format":"date-time","description":"Scheduled software update start time as a UTC ISO 8601 timestamp."},"errors":{"type":"array","items":{"type":"string"},"description":"Device-level software update error messages. Empty when no errors have occurred."},"toVersion":{"type":"object","properties":{"id":{"type":"string","description":"Software version identifier."},"shortName":{"type":"string","description":"Software version display name."}},"required":["id","shortName"],"description":"Software version selected for the current scheduled or running update."}},"required":["status","errors"],"description":"Current device-scoped software update status."}},"required":["device","network","currentVersion","isUpdateAvailable","update"]},"maxItems":1000,"description":"Software update status results for accessible eligible Cloud Monitoring for Catalyst switches. By default, every such switch appears, including switches with no active or retained update; those switches use update.status.value idle. Request filters can exclude rows. Maximum 1000 per page."},"meta":{"type":"object","properties":{"counts":{"type":"object","properties":{"items":{"type":"object","properties":{"total":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Total matching items. Valid range: 0..2147483647."},"remaining":{"type":"integer","minimum":0,"maximum":2147483647,"description":"Matching items available on later pages. Valid range: 0..2147483647."}},"required":["total","remaining"],"description":"Item counts."}},"required":["items"],"description":"Counts for the paginated collection."}},"required":["counts"],"description":"Metadata for the paginated collection."}},"required":["items","meta"]},"example":{"items":[{"device":{"serial":"Q234-ABCD-5678","name":"My switch","model":"C9300L-48PF-4X","url":"https://n1.meraki.com//n//manage/nodes/new_list/000000000000","storage":{"free":2048000},"size":{"multiplier":1.2},"stack":{"id":"1234","name":"Core Stack","members":{"counts":{"total":3},"items":[{"serial":"Q234-ABCD-5678","storage":{"free":2048000},"size":{"multiplier":1.2}}],"serials":["Q234-ABCD-5678","Q234-ABCD-5679","Q234-ABCD-5680"]}}},"network":{"id":"N_24329156","name":"Chicago","url":"https://n1.meraki.com//n//manage/nodes/list"},"currentVersion":{"shortName":"IOS XE 17.18.3a"},"isUpdateAvailable":true,"update":{"status":{"value":"upgrade-complete","label":"Upgrade complete","stage":{"value":"installation","label":"Installing software"},"result":{"value":"failed","label":"Update failed"},"stages":{"checkIn":{"status":"completed","startedAt":"2018-02-11T00:00:00.090210Z","completedAt":"2018-02-11T00:00:00.090210Z"},"download":{"status":"completed","startedAt":"2018-02-11T00:00:00.090210Z","completedAt":"2018-02-11T00:00:00.090210Z"},"installation":{"status":"failed","startedAt":"2018-02-11T00:00:00.090210Z","completedAt":"2018-02-11T00:00:00.090210Z"},"verification":{"status":"skipped","startedAt":null,"completedAt":null}}},"batchId":"1234","id":"1234","scheduledAt":"2018-02-11T00:00:00.090210Z","errors":["Image installation failed because the device is unreachable."],"toVersion":{"id":"1234","shortName":"IOS XE 17.18.2"}}}],"meta":{"counts":{"items":{"total":64,"remaining":34}}}}}},"headers":{"Link":{"schema":{"type":"string"},"description":"A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests."}}}},"security":[{"oauth2":["dashboard:general:config:read"]}],"summary":"List software update statuses for Cloud Monitoring for Catalyst switches in one paginated device table","tags":["switch","monitor","devices","software","updates","statuses","byDevice"],"x-release-stage":"beta","__originalOperationId":"getOrganizationSwitchDevicesSoftwareUpdateStatusesByDevice","method":"get","path":"/organizations/{organizationId}/switch/devices/software/updates/statuses/byDevice"}}