import json, requests
from api_auth import APICredentials, APIParams

class Rule:
    def __init__(self):
        self.host = "https://services.uplynk.com"

    def run(self):
        """
        Create a rule.
        """
        self._create_rule()

    def _create_rule(self):
        url = "{}{}".format(self.host, "/api/v4/rules")

        payload = {
            'desc': 'My New Rule', # Replace with the rule's name.
            'alternate_content_type': 'slate', # Sets alternate content to slate.
            'all_viewers': True # Applies this rule to all viewers.
        }

        headers = {'Content-Type': 'application/json'}

        response = requests.post(
            url, params=APIParams(APICredentials()).get_params({}), data=json.dumps(payload), headers=headers 
        )

        print(response.json())

Rule().run()