def add_agent_queue(self, queue, project=None, authorize_pipelines=None):
        """AddAgentQueue.
        [Preview API] Create a new agent queue to connect a project to an agent pool.
        :param :class:`<TaskAgentQueue> <azure.devops.v5_1.task_agent.models.TaskAgentQueue>` queue: Details about the queue to create
        :param str project: Project ID or project name
        :param bool authorize_pipelines: Automatically authorize this queue when using YAML
        :rtype: :class:`<TaskAgentQueue> <azure.devops.v5_1.task-agent.models.TaskAgentQueue>`
        """
        route_values = {}
        if project is not None:
            route_values['project'] = self._serialize.url('project', project, 'str')
        query_parameters = {}
        if authorize_pipelines is not None:
            query_parameters['authorizePipelines'] = self._serialize.query('authorize_pipelines', authorize_pipelines, 'bool')
        content = self._serialize.body(queue, 'TaskAgentQueue')
        response = self._send(http_method='POST',
                              location_id='900fa995-c559-4923-aae7-f8424fe4fbea',
                              version='5.1-preview.1',
                              route_values=route_values,
                              query_parameters=query_parameters,
                              content=content)
        return self._deserialize('TaskAgentQueue', response)