• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer
WordPress a2z

WordPress a2z

WordPress Dynamic API Reference

  • Home
  • Plugins
  • Themes
  • Shortcodes
  • APIs
  • Classes
  • Files
  • Hooks
  • Sitemap
  • Blog
Home / APIs / Akismet_REST_API::init() – Register the REST API routes.

Description

Register the REST API routes.

Usage

Akismet_REST_API::init();

Parameters

Returns

void

Source

File name: akismet/class.akismet-rest-api.php
Lines:

1 to 100 of 126
  public static function init() {
    if ( ! function_exists( 'register_rest_route' ) ) {
      // The REST API wasn't integrated into core until 4.4, and we support 4.0+ (for now).
      return false;
    }

    register_rest_route( 'akismet/v1', '/key', array(
      array(
        'methods' => WP_REST_Server::READABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'get_key' ),
      ), array(
        'methods' => WP_REST_Server::EDITABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'set_key' ),
        'args' => array(
          'key' => array(
            'required' => true,
            'type' => 'string',
            'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ),
            'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ),
          ),
        ),
      ), array(
        'methods' => WP_REST_Server::DELETABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'delete_key' ),
      )
    ) );

    register_rest_route( 'akismet/v1', '/settings/', array(
      array(
        'methods' => WP_REST_Server::READABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'get_settings' ),
      ),
      array(
        'methods' => WP_REST_Server::EDITABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'set_boolean_settings' ),
        'args' => array(
          'akismet_strictness' => array(
            'required' => false,
            'type' => 'boolean',
            'description' => __( 'If true, Akismet will automatically discard the worst spam automatically rather than putting it in the spam folder.', 'akismet' ),
          ),
          'akismet_show_user_comments_approved' => array(
            'required' => false,
            'type' => 'boolean',
            'description' => __( 'If true, show the number of approved comments beside each comment author in the comments list page.', 'akismet' ),
          ),
        ),
      )
    ) );

    register_rest_route( 'akismet/v1', '/stats', array(
      'methods' => WP_REST_Server::READABLE,
      'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
      'callback' => array( 'Akismet_REST_API', 'get_stats' ),
      'args' => array(
        'interval' => array(
          'required' => false,
          'type' => 'string',
          'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_interval' ),
          'description' => __( 'The time period for which to retrieve stats. Options: 60-days, 6-months, all', 'akismet' ),
          'default' => 'all',
        ),
      ),
    ) );

    register_rest_route( 'akismet/v1', '/stats/(?P<interval>[\w+])', array(
      'args' => array(
        'interval' => array(
          'description' => __( 'The time period for which to retrieve stats. Options: 60-days, 6-months, all', 'akismet' ),
          'type' => 'string',
        ),
      ),
      array(
        'methods' => WP_REST_Server::READABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'get_stats' ),
      )
    ) );

    register_rest_route( 'akismet/v1', '/alert', array(
      array(
        'methods' => WP_REST_Server::READABLE,
        'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ),
        'callback' => array( 'Akismet_REST_API', 'get_alert' ),
        'args' => array(
          'key' => array(
            'required' => false,
            'type' => 'string',
            'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ),
            'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ),
          ),
        ),
      ),
      array(
        'methods' => WP_REST_Server::EDITABLE,
 
[1] [2] Next »

 View on GitHub View on Trac

Called by

    Invoked by

      Calls

      Call hooks

      Function name: Akismet_REST_API::init
      Class ref: Akismet_REST_API
      Plugin ref: Akismet
      Version: 4.1.9
      Sourcefile: class.akismet-rest-api.php
      File ref: class.akismet-rest-api.php
      Deprecated?: No
      API Letters: A,I,R

      Published: 19th December 2019 | Last updated: 19th December 2019

      Primary Sidebar

      Information

      Function name: Akismet_REST_API::init
      Class ref: Akismet_REST_API
      Plugin ref: Akismet
      Version: 4.1.9
      Sourcefile: class.akismet-rest-api.php
      File ref: class.akismet-rest-api.php
      Deprecated?: No
      API Letters: A,I,R

      Footer

      WordPress a2z
      WordPress a2z
      WordPress Dynamic API Reference
      WordPress 5.7. PHP: 7.3.27
      WordPress a2z
      WordPress core a2z
      Genesis Theme Framework a2z
      Jetpack a2z
      WordPress develop tests
      Easy Digital Downloads a2z
      WooCommerce a2z
      Yoast SEO a2z
      WordPress Blocks

      Site:  wp-a2z.org
      © Copyright WordPress a2z 2014-2021. All rights reserved.


      Website designed and developed by Herb Miller
      Proudly powered by WordPress and oik plugins

      • Home
      • Blog
      • Sitemap
      • Sites