wp_prepare_json_schema_for_client()WP 7.1.0

Prepares a JSON Schema for clients.

Use this before exposing a schema outside of WordPress's server-side validation, for example in REST responses, Ability metadata, or AI provider requests. The prepared schema uses forms that JSON Schema draft-04 clients can understand.

WordPress-internal schema conveniences are converted or removed only where needed to keep the exposed schema valid for the selected profile.

No Hooks.

Returns

array<string, mixed>. The prepared schema.

Usage

wp_prepare_json_schema_for_client( $schema, $schema_profile ): array;
$schema(array<string, mixed>) (required)
The schema array.
$schema_profile(string)
Name of the schema profile whose keywords should be preserved.
Default: 'draft-04'

Changelog

Since 7.1.0 Introduced.

wp_prepare_json_schema_for_client() code WP 7.1

function wp_prepare_json_schema_for_client( array $schema, string $schema_profile = 'draft-04' ): array {
	$allowed_keywords = array_fill_keys( wp_get_json_schema_allowed_keywords( $schema_profile ), true );

	return _wp_prepare_json_schema_for_client_with_allowed_keywords( $schema, $allowed_keywords );
}