Automattic\WooCommerce\Internal\Fulfillments
OrderFulfillmentsRestController::register_routes
Register the routes for fulfillments.
Method of the class: OrderFulfillmentsRestController{}
No Hooks.
Returns
null. Nothing (null).
Usage
$OrderFulfillmentsRestController = new OrderFulfillmentsRestController(); $OrderFulfillmentsRestController->register_routes();
OrderFulfillmentsRestController::register_routes() OrderFulfillmentsRestController::register routes code WC 10.3.3
public function register_routes() {
// Register the route for getting and setting order fulfillments.
register_rest_route(
$this->route_namespace,
$this->rest_base,
array(
array(
'methods' => \WP_REST_Server::READABLE,
'callback' => fn( $request ) => $this->run( $request, 'get_fulfillments' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_get_fulfillments(),
'schema' => $this->get_schema_for_get_fulfillments(),
),
array(
'methods' => \WP_REST_Server::CREATABLE,
'callback' => fn( $request ) => $this->run( $request, 'create_fulfillment' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_create_fulfillment(),
'schema' => $this->get_schema_for_create_fulfillment(),
),
),
);
// Register the route for getting a specific fulfillment.
register_rest_route(
$this->route_namespace,
$this->rest_base . '/(?P<fulfillment_id>[\d]+)',
array(
array(
'methods' => \WP_REST_Server::READABLE,
'callback' => fn( $request ) => $this->run( $request, 'get_fulfillment' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_get_fulfillment(),
'schema' => $this->get_schema_for_get_fulfillment(),
),
array(
'methods' => \WP_REST_Server::EDITABLE,
'callback' => fn( $request ) => $this->run( $request, 'update_fulfillment' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_update_fulfillment(),
'schema' => $this->get_schema_for_update_fulfillment(),
),
array(
'methods' => \WP_REST_Server::DELETABLE,
'callback' => fn( $request ) => $this->run( $request, 'delete_fulfillment' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_delete_fulfillment(),
'schema' => $this->get_schema_for_delete_fulfillment(),
),
),
);
// Register the route for fulfillment metadata.
register_rest_route(
$this->route_namespace,
$this->rest_base . '/(?P<fulfillment_id>[\d]+)/metadata',
array(
array(
'methods' => \WP_REST_Server::READABLE,
'callback' => fn( $request ) => $this->run( $request, 'get_fulfillment_meta' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_get_fulfillment_meta(),
'schema' => $this->get_schema_for_get_fulfillment_meta(),
),
array(
'methods' => \WP_REST_Server::EDITABLE,
'callback' => fn( $request ) => $this->run( $request, 'update_fulfillment_meta' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_update_fulfillment_meta(),
'schema' => $this->get_schema_for_update_fulfillment_meta(),
),
array(
'methods' => \WP_REST_Server::DELETABLE,
'callback' => fn( $request ) => $this->run( $request, 'delete_fulfillment_meta' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_delete_fulfillment_meta(),
'schema' => $this->get_schema_for_delete_fulfillment_meta(),
),
),
);
// Register the route for tracking number lookup.
register_rest_route(
$this->route_namespace,
$this->rest_base . '/lookup',
array(
array(
'methods' => \WP_REST_Server::READABLE,
'callback' => fn( $request ) => $this->run( $request, 'get_tracking_number_details' ),
'permission_callback' => fn( $request ) => $this->check_permission_for_fulfillments( $request ),
'args' => $this->get_args_for_get_tracking_number_details(),
'schema' => $this->get_schema_for_get_tracking_number_details(),
),
),
);
}