docs: def _create_application_request(app_metadata, template):
      """
      Construct the request body to create application.
  
      :param app_metadata: Object containing app metadata
      :type app_metadata: ApplicationMetadata
      :param template: A packaged YAML or JSON SAM template
      :type template: str
      :return: SAR CreateApplication request body
      :rtype: dict
      """
      app_metadata.validate(['author', 'description', 'name'])
      request = {
          'Author': app_metadata.author,
          'Description': app_metadata.description,
          'HomePageUrl': app_metadata.home_page_url,
          'Labels': app_metadata.labels,
          'LicenseUrl': app_metadata.license_url,
          'Name': app_metadata.name,
          'ReadmeUrl': app_metadata.readme_url,
          'SemanticVersion': app_metadata.semantic_version,
          'SourceCodeUrl': app_metadata.source_code_url,
          'SpdxLicenseId': app_metadata.spdx_license_id,
          'TemplateBody': template
      }
      # Remove None values
      return {k: v for k, v in request.items() if v}