{"type":"api","title":"Create Organization Action Batch","meta":{"id":"/apps/pubhub/media/Meraki-Dashboard-API-v1-Documentation/4723762d29b3380de018ae8c0d8a59499a6523e0/5c63a5d4-9452-397a-85eb-8b6fec45147e","info":{"title":"Meraki Dashboard API","description":"A RESTful API to programmatically manage and monitor Cisco Meraki networks at scale.\n\n> Date: 03 July, 2024\n>\n> [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":"1.48.0"},"security":[{"meraki_api_key":[]},{"bearerAuth":[]}],"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":"accessControlLists"},{"name":"accessPolicies"},{"name":"acls"},{"name":"actionBatches"},{"name":"adaptivePolicy"},{"name":"addresses"},{"name":"admins"},{"name":"airMarshal"},{"name":"alertTypes"},{"name":"alerts"},{"name":"alternateManagementInterface"},{"name":"analytics"},{"name":"apiRequests"},{"name":"apnsCert"},{"name":"appliances"},{"name":"applicationCategories"},{"name":"applicationUsage"},{"name":"applications"},{"name":"areas"},{"name":"arpInspection"},{"name":"arpTable"},{"name":"artifacts"},{"name":"assets"},{"name":"assignments"},{"name":"authenticationToken"},{"name":"availabilities"},{"name":"bandwidthUsageHistory"},{"name":"bgp"},{"name":"billing"},{"name":"bluetooth"},{"name":"bluetoothClients"},{"name":"bonjourForwarding"},{"name":"boundaries"},{"name":"brandingPolicies"},{"name":"bulk"},{"name":"bulkUpdate"},{"name":"byBoundary"},{"name":"byClient"},{"name":"byDevice"},{"name":"byEnergyUsage"},{"name":"byInterval"},{"name":"byMetric"},{"name":"byModel"},{"name":"byNetwork"},{"name":"byStatus"},{"name":"bySwitch"},{"name":"byType"},{"name":"byUsage"},{"name":"byUtilization"},{"name":"bypassActivationLockAttempts"},{"name":"cableTest"},{"name":"callbacks"},{"name":"categories"},{"name":"cellular"},{"name":"cellularFirewallRules"},{"name":"cellularUsageHistory"},{"name":"certs"},{"name":"changeHistory"},{"name":"channelUtilization"},{"name":"channelUtilizationHistory"},{"name":"claim"},{"name":"claimKey"},{"name":"clientCountHistory"},{"name":"clients"},{"name":"cloudMonitoring"},{"name":"commands"},{"name":"compliance"},{"name":"configTemplates"},{"name":"configurationChanges"},{"name":"configure"},{"name":"configuredDevices"},{"name":"connectionStats"},{"name":"connectivity"},{"name":"connectivityEvents"},{"name":"connectivityMonitoringDestinations"},{"name":"contentFiltering"},{"name":"coterm"},{"name":"current"},{"name":"customAnalytics"},{"name":"customPerformanceClasses"},{"name":"dataRateHistory"},{"name":"delegated"},{"name":"desktopLogs"},{"name":"details"},{"name":"detections"},{"name":"deviceCommandLogs"},{"name":"deviceProfiles"},{"name":"deviceTypeGroupPolicies"},{"name":"dhcp"},{"name":"dhcpServerPolicy"},{"name":"dscpTaggingOptions"},{"name":"dscpToCosMappings"},{"name":"eapOverride"},{"name":"earlyAccess"},{"name":"electronicShelfLabel"},{"name":"entitlements"},{"name":"ethernet"},{"name":"eventTypes"},{"name":"events"},{"name":"exportEvents"},{"name":"failedConnections"},{"name":"features"},{"name":"fields"},{"name":"firewall"},{"name":"firewalledServices"},{"name":"firmware"},{"name":"firmwareUpgrades"},{"name":"floorPlans"},{"name":"groupPolicies"},{"name":"groups"},{"name":"health"},{"name":"healthByTime"},{"name":"historical"},{"name":"history"},{"name":"hotspot20"},{"name":"httpServers"},{"name":"identities"},{"name":"identityPsks"},{"name":"idps"},{"name":"imports"},{"name":"inboundCellularFirewallRules"},{"name":"inboundFirewallRules"},{"name":"interfaces"},{"name":"internetPolicies"},{"name":"intrusion"},{"name":"inventory"},{"name":"ipv6"},{"name":"l3FirewallRules"},{"name":"l7FirewallRules"},{"name":"lan"},{"name":"latencyHistory"},{"name":"latencyStats"},{"name":"latest"},{"name":"licenses"},{"name":"licensing"},{"name":"lines"},{"name":"linkAggregations"},{"name":"linkLayer"},{"name":"live"},{"name":"liveTools"},{"name":"lldpCdp"},{"name":"loginSecurity"},{"name":"logs"},{"name":"lossAndLatencyHistory"},{"name":"malware"},{"name":"managementInterface"},{"name":"manufacturers"},{"name":"me"},{"name":"merakiAuthUsers"},{"name":"meshStatuses"},{"name":"models"},{"name":"monitor"},{"name":"monitoredMediaServers"},{"name":"mqttBrokers"},{"name":"mtu"},{"name":"multicast"},{"name":"netflow"},{"name":"networkAdapters"},{"name":"networkHealth"},{"name":"objectDetectionModels"},{"name":"onboarding"},{"name":"oneToManyNatRules"},{"name":"oneToOneNatRules"},{"name":"openapiSpec"},{"name":"optIns"},{"name":"order"},{"name":"ospf"},{"name":"overview"},{"name":"packetLoss"},{"name":"packets"},{"name":"payloadTemplates"},{"name":"performance"},{"name":"performanceHistory"},{"name":"permissions"},{"name":"pii"},{"name":"piiKeys"},{"name":"ping"},{"name":"pingDevice"},{"name":"policies"},{"name":"policy"},{"name":"policyObjects"},{"name":"portForwardingRules"},{"name":"portSchedules"},{"name":"ports"},{"name":"power"},{"name":"powerModules"},{"name":"prefixes"},{"name":"prepare"},{"name":"priorities"},{"name":"profiles"},{"name":"provisioning"},{"name":"qosRules"},{"name":"qualityAndRetention"},{"name":"qualityRetentionProfiles"},{"name":"radio"},{"name":"readings"},{"name":"recent"},{"name":"relationships"},{"name":"rendezvousPoints"},{"name":"requests"},{"name":"responseCodes"},{"name":"restrictions"},{"name":"rfProfiles"},{"name":"roles"},{"name":"rollbacks"},{"name":"routing"},{"name":"rules"},{"name":"saml"},{"name":"samlRoles"},{"name":"schedules"},{"name":"sdwan"},{"name":"search"},{"name":"security"},{"name":"securityCenters"},{"name":"seen"},{"name":"sense"},{"name":"sentry"},{"name":"servers"},{"name":"settings"},{"name":"signalQualityHistory"},{"name":"sims"},{"name":"singleLan"},{"name":"siteToSiteVpn"},{"name":"smDevicesForKey"},{"name":"smOwnersForKey"},{"name":"snmp"},{"name":"softwares"},{"name":"splash"},{"name":"splashAuthorizationStatus"},{"name":"splashLoginAttempts"},{"name":"ssids"},{"name":"stacks"},{"name":"staged"},{"name":"stages"},{"name":"staticRoutes"},{"name":"statics"},{"name":"stats"},{"name":"status"},{"name":"statuses"},{"name":"stormControl"},{"name":"stp"},{"name":"subnetPool"},{"name":"subnets"},{"name":"subscription"},{"name":"subscriptions"},{"name":"summary"},{"name":"swaps"},{"name":"switches"},{"name":"syslogServers"},{"name":"targetGroups"},{"name":"themes"},{"name":"thirdPartyVPNPeers"},{"name":"throughputTest"},{"name":"top"},{"name":"topology"},{"name":"traffic"},{"name":"trafficAnalysis"},{"name":"trafficHistory"},{"name":"trafficShaping"},{"name":"trustedAccessConfigs"},{"name":"trustedServers"},{"name":"upgrades"},{"name":"uplink"},{"name":"uplinkBandwidth"},{"name":"uplinkSelection"},{"name":"uplinks"},{"name":"uplinksLossAndLatency"},{"name":"usage"},{"name":"usageHistories"},{"name":"usageHistory"},{"name":"userAccessDevices"},{"name":"users"},{"name":"v4"},{"name":"video"},{"name":"videoLink"},{"name":"vlanAssignments"},{"name":"vlanProfiles"},{"name":"vlans"},{"name":"vmx"},{"name":"vpn"},{"name":"vpnExclusions"},{"name":"vpnFirewallRules"},{"name":"vppAccounts"},{"name":"wakeOnLan"},{"name":"warmSpare"},{"name":"warnings"},{"name":"webhookTests"},{"name":"webhooks"},{"name":"wirelessProfiles"},{"name":"wlanLists"},{"name":"zones"}],"x-parser-conf":{"overview":{"markdownPath":"docs/overview.md"},"theme":"meraki","serverConfig":true,"meta":{"useProxy":true},"httpBearer":{"bearerToken":"75dd5334bef4d2bc96f26138c163c0a3fa0b5ca6"},"labelConfig":{"endpoint":{"field":"operationId","format":"startCase"}},"groupBy":{"$remoteModule":"config/group_platform.js"},"sortBy":{"$remoteModule":"config/sort_by.js"},"exampleAsDefault":true,"expand":3,"sampleCode":{"python":{"folder":"meraki/sdk/python","name":"Meraki Python Library","highlight":"python"}},"variables":{"organizationId":"1215707","networkId":"N_784752235069315754","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"}}},"spec":{"callbacks":{"actionBatch":{"{$request.body#/callback/url}":{"post":{"requestBody":{"required":true,"description":"Callback payload","content":{"application/json":{"schema":{"type":"object","properties":{"organization":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}}},"network":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"}}},"sentAt":{"type":"string"},"callbackId":{"type":"string"},"message":{"type":"object","properties":{"id":{"type":"string","description":"ID of the action batch. Can be used to check the status of the action batch at /organizations/{organizationId}/actionBatches/{actionBatchId}"},"organizationId":{"type":"string","description":"ID of the organization this action batch belongs to"},"confirmed":{"type":"boolean","description":"Flag describing whether the action should be previewed before executing or not"},"synchronous":{"type":"boolean","description":"Flag describing whether actions should run synchronously or asynchronously"},"status":{"type":"object","properties":{"completed":{"type":"boolean","description":"Flag describing whether all actions in the action batch have completed"},"failed":{"type":"boolean","description":"Flag describing whether any actions in the action batch failed"},"errors":{"type":"array","items":{"type":"string"},"description":"List of errors encountered when running actions in the action batch"},"createdResources":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"ID of the created resource"},"uri":{"type":"string","description":"URI, not including base, of the created resource"}}},"description":"Resources created as a result of this action batch"}},"required":["createdResources"],"description":"Status of action batch"},"actions":{"type":"array","items":{"type":"object","properties":{"resource":{"type":"string","description":"Unique identifier for the resource to be acted on"},"operation":{"type":"string","description":"The operation to be used by this action"},"body":{"type":"object","additionalProperties":true,"description":"Data provided in the body of the Action. Contents depend on the Action type"}},"required":["resource","operation"]},"description":"A set of changes made as part of this action (<a href='https://developer.cisco.com/meraki/api/#/rest/guides/action-batches/'>more details</a>)"}},"required":["actions"]}}}}}},"responses":{"2XX":{"description":"Your server return this code if it accepts the callback"}}}}}},"description":"Create an action batch","operationId":"createOrganizationActionBatch","parameters":[{"name":"organizationId","in":"path","description":"Organization ID","schema":{"type":"string"},"required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"confirmed":{"type":"boolean","description":"Set to true for immediate execution. Set to false if the action should be previewed before executing. This property cannot be unset once it is true. Defaults to false."},"synchronous":{"type":"boolean","description":"Set to true to force the batch to run synchronous. There can be at most 20 actions in synchronous batch. Defaults to false."},"actions":{"type":"array","items":{"type":"object","properties":{"resource":{"type":"string","description":"Unique identifier for the resource to be acted on"},"operation":{"type":"string","description":"The operation to be used"},"body":{"type":"object","description":"The body of the action","default":{}}},"required":["resource","operation"]},"description":"A set of changes to make as part of this action (<a href='https://developer.cisco.com/meraki/api/#/rest/guides/action-batches/'>more details</a>)"},"callback":{"type":"object","properties":{"url":{"type":"string","description":"The callback URL for the webhook target. If using this field, please also specify a sharedSecret."},"sharedSecret":{"type":"string","description":"A shared secret that will be included in the requests sent to the callback URL. It can be used to verify that the request was sent by Meraki. If using this field, please also specify an url."},"httpServer":{"type":"object","properties":{"id":{"type":"string","description":"The webhook receiver ID that will receive information. If specifying this, please leave the url and sharedSecret fields blank."}},"description":"The webhook receiver used for the callback webhook."},"payloadTemplate":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the payload template. Defaults to 'wpt_00005' for the Callback (included) template."}},"description":"The payload template of the webhook used for the callback"}},"x-release-stage":"general_availability","description":"Details for the callback. Please include either an httpServerId OR url and sharedSecret"}},"example":{"confirmed":true,"synchronous":true,"actions":[{"resource":"/devices/QXXX-XXXX-XXXX/switch/ports/3","operation":"create"}],"callback":{"url":"https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031","sharedSecret":"secret","httpServer":{"id":"aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M="},"payloadTemplate":{"id":"wpt_2100"}}},"required":["actions"]}}},"required":true},"responses":{"201":{"description":"Successful operation","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"ID of the action batch. Can be used to check the status of the action batch at /organizations/{organizationId}/actionBatches/{actionBatchId}"},"organizationId":{"type":"string","description":"ID of the organization this action batch belongs to"},"confirmed":{"type":"boolean","description":"Flag describing whether the action should be previewed before executing or not"},"synchronous":{"type":"boolean","description":"Flag describing whether actions should run synchronously or asynchronously"},"status":{"type":"object","properties":{"completed":{"type":"boolean","description":"Flag describing whether all actions in the action batch have completed"},"failed":{"type":"boolean","description":"Flag describing whether any actions in the action batch failed"},"errors":{"type":"array","items":{"type":"string"},"description":"List of errors encountered when running actions in the action batch"},"createdResources":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"ID of the created resource"},"uri":{"type":"string","description":"URI, not including base, of the created resource"}}},"description":"Resources created as a result of this action batch"}},"required":["createdResources"],"description":"Status of action batch"},"actions":{"type":"array","items":{"type":"object","properties":{"resource":{"type":"string","description":"Unique identifier for the resource to be acted on"},"operation":{"type":"string","description":"The operation to be used by this action"},"body":{"type":"object","additionalProperties":true,"description":"Data provided in the body of the Action. Contents depend on the Action type"}},"required":["resource","operation"]},"description":"A set of changes made as part of this action (<a href='https://developer.cisco.com/meraki/api/#/rest/guides/action-batches/'>more details</a>)"},"callback":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the callback. To check the status of the callback, use this ID in a request to /webhooks/callbacks/statuses/{id}"},"url":{"type":"string","description":"The callback URL for the webhook target. This was either provided in the original request or comes from a configured webhook receiver"},"status":{"type":"string","description":"The status of the callback"}},"description":"Information for callback used to send back results","x-release-stage":"general_availability"}},"required":["actions"]},"example":{"id":"1234","organizationId":"2930418","confirmed":true,"synchronous":false,"status":{"completed":true,"failed":false,"errors":[],"createdResources":[{"id":"1284392014819","uri":"/networks/L_XXXXX/groupPolicies/100"}]},"actions":[{"resource":"/devices/QXXX-XXXX-XXXX/switch/ports/3","operation":"update"}],"callback":{"id":"1284392014819","url":"https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031","status":"new"}}}}}},"summary":"Create an action batch","tags":["organizations","configure","actionBatches"],"__originalOperationId":"createOrganizationActionBatch","security":[{"meraki_api_key":[]},{"bearerAuth":[]}],"method":"post","path":"/organizations/{organizationId}/actionBatches","sampleCode":{"Meraki Python Library":{"code":"import meraki\n\n# Defining your API key as a variable in source code is discouraged.\n# This API key is for a read-only docs-specific environment.\n# In your own code, use an environment variable as shown under the Usage section\n# @ https://github.com/meraki/dashboard-api-python/\n\nAPI_KEY = '75dd5334bef4d2bc96f26138c163c0a3fa0b5ca6'\n\ndashboard = meraki.DashboardAPI(API_KEY)\n\norganization_id = '549236'\nactions = [{'resource': '/devices/QXXX-XXXX-XXXX/switch/ports/3', 'operation': 'create'}]\n\nresponse = dashboard.organizations.createOrganizationActionBatch(\n organization_id, actions, \n confirmed=True, \n synchronous=True, \n callback={'url': 'https://webhook.site/28efa24e-f830-4d9f-a12b-fbb9e5035031', 'sharedSecret': 'secret', 'httpServer': {'id': 'aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M='}, 'payloadTemplate': {'id': 'wpt_2100'}}\n)\n\nprint(response)","highlight":"python"}}}}