# wordpress-seo/trunk/src/dashboard/infrastructure/endpoints/setup-steps-tracking-endpoint.php

Yoast SEO – Advanced SEO with real-time guidance and built-in AI, version trunk. 51 lines.

- Page: https://pluginprobe.com/plugins/wordpress-seo/trunk/code/src/dashboard/infrastructure/endpoints/setup-steps-tracking-endpoint.php
- Raw: https://pluginprobe.com/plugins/wordpress-seo/trunk/raw/src/dashboard/infrastructure/endpoints/setup-steps-tracking-endpoint.php
- Modified: 2026-03-31T11:40:40+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/wordpress-seo/trunk/code/src/dashboard/infrastructure/endpoints/setup-steps-tracking-endpoint.php#L10-L20`.

```php
<?php

// phpcs:disable Yoast.NamingConventions.NamespaceName.TooLong -- Needed in the folder structure.
namespace Yoast\WP\SEO\Dashboard\Infrastructure\Endpoints;

use Exception;
use Yoast\WP\SEO\Dashboard\User_Interface\Tracking\Setup_Steps_Tracking_Route;

/**
 * Represents the setup steps tracking endpoint.
 */
class Setup_Steps_Tracking_Endpoint implements Dashboard_Endpoint_Interface {

	/**
	 * Gets the name.
	 *
	 * @return string
	 */
	public function get_name(): string {
		return 'setupStepsTracking';
	}

	/**
	 * Gets the namespace.
	 *
	 * @return string
	 */
	public function get_namespace(): string {
		return Setup_Steps_Tracking_Route::ROUTE_NAMESPACE;
	}

	/**
	 * Gets the route.
	 *
	 * @throws Exception If the route prefix is not overwritten this throws.
	 * @return string
	 */
	public function get_route(): string {
		return Setup_Steps_Tracking_Route::ROUTE_PREFIX;
	}

	/**
	 * Gets the URL.
	 *
	 * @return string
	 */
	public function get_url(): string {
		return \rest_url( $this->get_namespace() . $this->get_route() );
	}
}

```
