cisco.meraki.networks_clients_provision (2.18.0) — module

Resource module for networks _clients _provision

| "added in version" 2.16.0 of cisco.meraki"

Authors: Francisco Munoz (@fmunoz)

This plugin has a corresponding action plugin.

Install collection

Install with ansible-galaxy collection install cisco.meraki:==2.18.0


Add to requirements.yml

  collections:
    - name: cisco.meraki
      version: 2.18.0

Description

Manage operation create of the resource networks _clients _provision.

Provisions a client with a name and policy. Clients can be provisioned before they associate to the network.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Create
  cisco.meraki.networks_clients_provision:
    meraki_api_key: "{{meraki_api_key}}"
    meraki_base_url: "{{meraki_base_url}}"
    meraki_single_request_timeout: "{{meraki_single_request_timeout}}"
    meraki_certificate_path: "{{meraki_certificate_path}}"
    meraki_requests_proxy: "{{meraki_requests_proxy}}"
    meraki_wait_on_rate_limit: "{{meraki_wait_on_rate_limit}}"
    meraki_nginx_429_retry_wait_time: "{{meraki_nginx_429_retry_wait_time}}"
    meraki_action_batch_retry_wait_time: "{{meraki_action_batch_retry_wait_time}}"
    meraki_retry_4xx_error: "{{meraki_retry_4xx_error}}"
    meraki_retry_4xx_error_wait_time: "{{meraki_retry_4xx_error_wait_time}}"
    meraki_maximum_retries: "{{meraki_maximum_retries}}"
    meraki_output_log: "{{meraki_output_log}}"
    meraki_log_file_prefix: "{{meraki_log_file_prefix}}"
    meraki_log_path: "{{meraki_log_path}}"
    meraki_print_console: "{{meraki_print_console}}"
    meraki_suppress_logging: "{{meraki_suppress_logging}}"
    meraki_simulate: "{{meraki_simulate}}"
    meraki_be_geo_id: "{{meraki_be_geo_id}}"
    meraki_use_iterator_for_get_pages: "{{meraki_use_iterator_for_get_pages}}"
    meraki_inherit_logging_config: "{{meraki_inherit_logging_config}}"
    clients:
    - mac: 00:11:22:33:44:55
      name: Miles's phone
    devicePolicy: Group policy
    groupPolicyId: '101'
    networkId: string
    policiesBySecurityAppliance:
      devicePolicy: Normal
    policiesBySsid:
      '0':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '1':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '10':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '11':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '12':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '13':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '14':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '2':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '3':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '4':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '5':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '6':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '7':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '8':
        devicePolicy: Group policy
        groupPolicyId: '101'
      '9':
        devicePolicy: Group policy
        groupPolicyId: '101'

Inputs

    
clients:
    description: The array of clients to provision.
    elements: dict
    suboptions:
      mac:
        description: The MAC address of the client. Required.
        type: str
      name:
        description: The display name for the client. Optional. Limited to 255 bytes.
        type: str
    type: list

networkId:
    description: NetworkId path parameter. Network ID.
    type: str

devicePolicy:
    description: The policy to apply to the specified client. Can be 'Group policy', 'Allowed',
      'Blocked', 'Per connection' or 'Normal'. Required.
    type: str

groupPolicyId:
    description: The ID of the desired group policy to apply to the client. Required if
      'devicePolicy' is set to "Group policy". Otherwise this is ignored.
    type: str

meraki_caller:
    default: ''
    description:
    - meraki_caller (string), optional identifier for API usage tracking; can also be
      set as an environment variable MERAKI_PYTHON_SDK_CALLER
    type: str

meraki_api_key:
    description:
    - meraki_api_key (string), API key generated in dashboard; can also be set as an environment
      variable MERAKI_DASHBOARD_API_KEY
    required: true
    type: str

policiesBySsid:
    description: An object, describing the policy-connection associations for each active
      SSID within the network. Keys should be the number of enabled SSIDs, mapping to
      an object describing the client's policy.
    suboptions:
      '0':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '1':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '10':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '11':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '12':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '13':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '14':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '2':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '3':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '4':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '5':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '6':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '7':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '8':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
      '9':
        description: The number for the SSID.
        suboptions:
          devicePolicy:
            description: The policy to apply to the specified client. Can be 'Allowed',
              'Blocked', 'Normal' or 'Group policy'. Required.
            type: str
          groupPolicyId:
            description: The ID of the desired group policy to apply to the client. Required
              if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
            type: str
        type: dict
    type: dict

meraki_base_url:
    default: https://api.meraki.com/api/v1
    description:
    - meraki_base_url (string), preceding all endpoint resources
    type: str

meraki_log_path:
    default: ''
    description:
    - log_path (string), path to output log; by default, working directory of script if
      not specified
    type: str

meraki_simulate:
    default: false
    description:
    - meraki_simulate (boolean), simulate POST/PUT/DELETE calls to prevent changes?
    type: bool

meraki_be_geo_id:
    default: ''
    description:
    - meraki_be_geo_id (string), optional partner identifier for API usage tracking; can
      also be set as an environment variable BE_GEO_ID
    type: str

meraki_output_log:
    default: true
    description:
    - meraki_output_log (boolean), create an output log file?
    type: bool

meraki_print_console:
    default: true
    description:
    - meraki_print_console (boolean), print logging output to console?
    type: bool

meraki_requests_proxy:
    default: ''
    description:
    - meraki_requests_proxy (string), proxy server and port, if needed, for HTTPS
    type: str

meraki_log_file_prefix:
    default: meraki_api_
    description:
    - meraki_log_file_prefix (string), log file name appended with date and timestamp
    type: str

meraki_maximum_retries:
    default: 2
    description:
    - meraki_maximum_retries (integer), retry up to this many times when encountering
      429s or other server-side errors
    type: int

meraki_retry_4xx_error:
    default: false
    description:
    - meraki_retry_4xx_error (boolean), retry if encountering other 4XX error (besides
      429)?
    type: bool

meraki_certificate_path:
    default: ''
    description:
    - meraki_certificate_path (string), path for TLS/SSL certificate verification if behind
      local proxy
    type: str

meraki_suppress_logging:
    default: false
    description:
    - meraki_suppress_logging (boolean), disable all logging? you're on your own then!
    type: bool

meraki_wait_on_rate_limit:
    default: true
    description:
    - meraki_wait_on_rate_limit (boolean), retry if 429 rate limit error encountered?
    type: bool

policiesBySecurityAppliance:
    description: An object, describing what the policy-connection association is for the
      security appliance. (Only relevant if the security appliance is actually within
      the network).
    suboptions:
      devicePolicy:
        description: The policy to apply to the specified client. Can be 'Allowed', 'Blocked'
          or 'Normal'. Required.
        type: str
    type: dict

meraki_inherit_logging_config:
    default: false
    description:
    - meraki_inherit_logging_config (boolean), Inherits your own logger instance
    type: bool

meraki_single_request_timeout:
    default: 60
    description:
    - meraki_single_request_timeout (integer), maximum number of seconds for each API
      call
    type: int

meraki_nginx_429_retry_wait_time:
    default: 60
    description:
    - meraki_nginx_429_retry_wait_time (integer), Nginx 429 retry wait time
    type: int

meraki_retry_4xx_error_wait_time:
    default: 60
    description:
    - meraki_retry_4xx_error_wait_time (integer), other 4XX error retry wait time
    type: int

meraki_use_iterator_for_get_pages:
    default: false
    description:
    - meraki_use_iterator_for_get_pages (boolean), list* methods will return an iterator
      with each object instead of a complete list with all items
    type: bool

meraki_action_batch_retry_wait_time:
    default: 60
    description:
    - meraki_action_batch_retry_wait_time (integer), action batch concurrency error retry
      wait time
    type: int

Outputs

meraki_response:
  description: A dictionary or list with the response returned by the Cisco Meraki
    Python SDK
  returned: always
  sample: "{\n  \"clients\": [\n    {\n      \"clientId\": \"string\",\n      \"mac\"\
    : \"string\",\n      \"message\": \"string\",\n      \"name\": \"string\"\n  \
    \  }\n  ],\n  \"devicePolicy\": \"string\",\n  \"groupPolicyId\": \"string\"\n\
    }\n"
  type: dict

See also