# wordpress-seo/28.2/src/ai/authorization/user-interface/callback-route.php

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

- Page: https://pluginprobe.com/plugins/wordpress-seo/28.2/code/src/ai/authorization/user-interface/callback-route.php
- Raw: https://pluginprobe.com/plugins/wordpress-seo/28.2/raw/src/ai/authorization/user-interface/callback-route.php
- Modified: 2026-03-17T12:01:04+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/28.2/code/src/ai/authorization/user-interface/callback-route.php#L10-L20`.

```php
<?php

// phpcs:disable Yoast.NamingConventions.NamespaceName.TooLong -- Needed in the folder structure.
namespace Yoast\WP\SEO\AI\Authorization\User_Interface;

/**
 * Registers the callback route used in the authorization process.
 *
 * @makePublic
 *
 * @phpcs:disable Yoast.NamingConventions.ObjectNameDepth.MaxExceeded
 */
class Callback_Route extends Abstract_Callback_Route {

	/**
	 *  The prefix for this route.
	 *
	 * @var string
	 */
	public const ROUTE_PREFIX = '/ai_generator/callback';

	/**
	 * Registers routes with WordPress.
	 *
	 * @return void
	 */
	public function register_routes() {
		\register_rest_route(
			parent::ROUTE_NAMESPACE,
			self::ROUTE_PREFIX,
			[
				'methods'             => 'POST',
				'args'                => [
					'access_jwt'     => [
						'required'    => true,
						'type'        => 'string',
						'description' => 'The access JWT.',
					],
					'refresh_jwt'    => [
						'required'    => true,
						'type'        => 'string',
						'description' => 'The JWT to be used when the access JWT needs to be refreshed.',
					],
					'code_challenge' => [
						'required'    => true,
						'type'        => 'string',
						'description' => 'The SHA266 of the verification code used to check the authenticity of a callback call.',
					],
					'user_id'        => [
						'required'    => true,
						'type'        => 'integer',
						'description' => 'The id of the user associated to the code verifier.',
					],
				],
				'callback'            => [ $this, 'callback' ],
				'permission_callback' => '__return_true',
			],
		);
	}
}

```
