code: def _extract_from_serverless_api(self, logical_id, api_resource, collector):
          
  
          properties = api_resource.get("Properties", {})
          body = properties.get("DefinitionBody")
          uri = properties.get("DefinitionUri")
          binary_media = properties.get("BinaryMediaTypes", [])
  
          if not body and not uri:
              # Swagger is not found anywhere.
              LOG.debug("Skipping resource '%s'. Swagger document not found in DefinitionBody and DefinitionUri",
                        logical_id)
              return
  
          reader = SamSwaggerReader(definition_body=body,
                                    definition_uri=uri,
                                    working_dir=self.cwd)
          swagger = reader.read()
          parser = SwaggerParser(swagger)
          apis = parser.get_apis()
          LOG.debug("Found '%s' APIs in resource '%s'", len(apis), logical_id)
  
          collector.add_apis(logical_id, apis)
          collector.add_binary_media_types(logical_id, parser.get_binary_media_types())  # Binary media from swagger
          collector.add_binary_media_types(logical_id, binary_media)
docs: Extract APIs from AWS::Serverless::Api resource by reading and parsing Swagger documents. The result is added
          to the collector.
  
          Parameters
          ----------
          logical_id : str
              Logical ID of the resource
  
          api_resource : dict
              Resource definition, including its properties
  
          collector : ApiCollector
              Instance of the API collector that where we will save the API information