docs: def retrieve(endpoint='incidents',
               api_url=None,
               page_id=None,
               api_key=None,
               api_version=None):
      '''
      Retrieve a specific endpoint from the Statuspage API.
  
      endpoint: incidents
          Request a specific endpoint.
  
      page_id
          Page ID. Can also be specified in the config file.
  
      api_key
          API key. Can also be specified in the config file.
  
      api_version: 1
          API version. Can also be specified in the config file.
  
      api_url
          Custom API URL in case the user has a StatusPage service running in a custom environment.
  
      CLI Example:
  
      .. code-block:: bash
  
          salt 'minion' statuspage.retrieve components
  
      Example output:
  
      .. code-block:: bash
  
          minion:
              ----------
              comment:
              out:
                  |_
                    ----------
                    backfilled:
                        False
                    created_at:
                        2015-01-26T20:25:02.702Z
                    id:
                        kh2qwjbheqdc36
                    impact:
                        major
                    impact_override:
                        None
                    incident_updates:
                        |_
                          ----------
                          affected_components:
                              None
                          body:
                              We are currently investigating this issue.
                          created_at:
                              2015-01-26T20:25:02.849Z
                          display_at:
                              2015-01-26T20:25:02.849Z
                          id:
                              zvx7xz2z5skr
                          incident_id:
                              kh2qwjbheqdc36
                          status:
                              investigating
                          twitter_updated_at:
                              None
                          updated_at:
                              2015-01-26T20:25:02.849Z
                          wants_twitter_update:
                              False
                    monitoring_at:
                        None
                    name:
                        just testing some stuff
                    page_id:
                        ksdhgfyiuhaa
                    postmortem_body:
                        None
                    postmortem_body_last_updated_at:
                        None
                    postmortem_ignored:
                        False
                    postmortem_notified_subscribers:
                        False
                    postmortem_notified_twitter:
                        False
                    postmortem_published_at:
                        None
                    resolved_at:
                        None
                    scheduled_auto_completed:
                        False
                    scheduled_auto_in_progress:
                        False
                    scheduled_for:
                        None
                    scheduled_remind_prior:
                        False
                    scheduled_reminded_at:
                        None
                    scheduled_until:
                        None
                    shortlink:
                        http://stspg.io/voY
                    status:
                        investigating
                    updated_at:
                        2015-01-26T20:25:13.379Z
              result:
                  True
      '''
      params = _get_api_params(api_url=api_url,
                               page_id=page_id,
                               api_key=api_key,
                               api_version=api_version)
      if not _validate_api_params(params):
          log.error('Invalid API params.')
          log.error(params)
          return {
              'result': False,
              'comment': 'Invalid API params. See log for details'
          }
      headers = _get_headers(params)
      retrieve_url = '{base_url}/v{version}/pages/{page_id}/{endpoint}.json'.format(
          base_url=params['api_url'],
          version=params['api_version'],
          page_id=params['api_page_id'],
          endpoint=endpoint
      )
      return _http_request(retrieve_url,
                           headers=headers)