# pinova/trunk/src/API/RestAPI.php

پینوا | Pinova, version trunk. 37 lines.

- Page: https://pluginprobe.com/plugins/pinova/trunk/code/src/API/RestAPI.php
- Raw: https://pluginprobe.com/plugins/pinova/trunk/raw/src/API/RestAPI.php
- Modified: 2026-06-16T13:06:52+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/pinova/trunk/code/src/API/RestAPI.php#L10-L20`.

```php
<?php

namespace Pinova\API;

use WP_REST_Request;

abstract class RestAPI {

	public function __construct() {
		add_action( 'rest_api_init', [ $this, 'register_routes' ] );
	}

	abstract public function register_routes();

	public function permission_callback( WP_REST_Request $request ): bool {
		return true;
	}

	/**
	 * @param bool        $success
	 * @param string|null $message
	 * @param array       $data
	 *
	 * @return no-return
	 */
	public static function response( bool $success, ?string $message = null, array $data = [] ) {

		echo wp_json_encode( [
			'success' => $success,
			'message' => $message,
			'data'    => $data,
		] );

		die();
	}

}
```
