Source 
  File: wp-includes/rest-api/endpoints/class-wp-rest-block-directory-controller.php 
 public function prepare_item_for_response( $plugin, $request ) {
		// There might be multiple blocks in a plugin. Only the first block is mapped.
		$block_data = reset( $plugin['blocks'] );
		// A data array containing the properties we'll return.
		$block = array(
			'name'                => $block_data['name'],
			'title'               => ( $block_data['title'] ? $block_data['title'] : $plugin['name'] ),
			'description'         => wp_trim_words( $plugin['description'], 30, '...' ),
			'id'                  => $plugin['slug'],
			'rating'              => $plugin['rating'] / 20,
			'rating_count'        => intval( $plugin['num_ratings'] ),
			'active_installs'     => intval( $plugin['active_installs'] ),
			'author_block_rating' => $plugin['author_block_rating'] / 20,
			'author_block_count'  => intval( $plugin['author_block_count'] ),
			'author'              => wp_strip_all_tags( $plugin['author'] ),
			'icon'                => ( isset( $plugin['icons']['1x'] ) ? $plugin['icons']['1x'] : 'block-default' ),
			'last_updated'        => gmdate( 'Y-m-d\TH:i:s', strtotime( $plugin['last_updated'] ) ),
			'humanized_updated'   => sprintf(
				/* translators: %s: Human-readable time difference. */
				__( '%s ago' ),
				human_time_diff( strtotime( $plugin['last_updated'] ) )
			),
		);
		$this->add_additional_fields_to_object( $block, $request );
		$response = new WP_REST_Response( $block );
		$response->add_links( $this->prepare_links( $plugin ) );
		return $response;
	}