:doc:`Redshift <../../redshift>` / Client / modify_snapshot_schedule

************************
modify_snapshot_schedule
************************



.. py:method:: Redshift.Client.modify_snapshot_schedule(**kwargs)

  

  Modifies a snapshot schedule. Any schedule associated with a cluster is modified asynchronously.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/redshift-2012-12-01/ModifySnapshotSchedule>`_  


  **Request Syntax**
  ::

    response = client.modify_snapshot_schedule(
        ScheduleIdentifier='string',
        ScheduleDefinitions=[
            'string',
        ]
    )
    
  :type ScheduleIdentifier: string
  :param ScheduleIdentifier: **[REQUIRED]** 

    A unique alphanumeric identifier of the schedule to modify.

    

  
  :type ScheduleDefinitions: list
  :param ScheduleDefinitions: **[REQUIRED]** 

    An updated list of schedule definitions. A schedule definition is made up of schedule expressions, for example, "cron(30 12 *)" or "rate(12 hours)".

    

  
    - *(string) --* 

    

  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ScheduleDefinitions': [
              'string',
          ],
          'ScheduleIdentifier': 'string',
          'ScheduleDescription': 'string',
          'Tags': [
              {
                  'Key': 'string',
                  'Value': 'string'
              },
          ],
          'NextInvocations': [
              datetime(2015, 1, 1),
          ],
          'AssociatedClusterCount': 123,
          'AssociatedClusters': [
              {
                  'ClusterIdentifier': 'string',
                  'ScheduleAssociationState': 'MODIFYING'|'ACTIVE'|'FAILED'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Describes a snapshot schedule. You can set a regular interval for creating snapshots of a cluster. You can also schedule snapshots for specific dates.

      
      

      - **ScheduleDefinitions** *(list) --* 

        A list of ScheduleDefinitions.

        
        

        - *(string) --* 
    
      

      - **ScheduleIdentifier** *(string) --* 

        A unique identifier for the schedule.

        
      

      - **ScheduleDescription** *(string) --* 

        The description of the schedule.

        
      

      - **Tags** *(list) --* 

        An optional set of tags describing the schedule.

        
        

        - *(dict) --* 

          A tag consisting of a name/value pair for a resource.

          
          

          - **Key** *(string) --* 

            The key, or name, for the resource tag.

            
          

          - **Value** *(string) --* 

            The value for the resource tag.

            
      
    
      

      - **NextInvocations** *(list) --* 
        

        - *(datetime) --* 
    
      

      - **AssociatedClusterCount** *(integer) --* 

        The number of clusters associated with the schedule.

        
      

      - **AssociatedClusters** *(list) --* 

        A list of clusters associated with the schedule. A maximum of 100 clusters is returned.

        
        

        - *(dict) --* 
          

          - **ClusterIdentifier** *(string) --* 
          

          - **ScheduleAssociationState** *(string) --* 
      
    
  
  **Exceptions**
  
  *   :py:class:`Redshift.Client.exceptions.InvalidScheduleFault`

  
  *   :py:class:`Redshift.Client.exceptions.SnapshotScheduleNotFoundFault`

  
  *   :py:class:`Redshift.Client.exceptions.SnapshotScheduleUpdateInProgressFault`

  