LLMS_REST_API_Keys_Controller::create_item( WP_REST_Request $request )
Create an API Key.
Parameters Parameters
- $request
-
(WP_REST_Request) (Required) Request object.
Return Return
(WP_Error|WP_REST_Response)
Source Source
File: libraries/lifterlms-rest/includes/server/class-llms-rest-api-keys-controller.php
public function create_item( $request ) {
$prepared = $this->prepare_item_for_database( $request );
if ( is_wp_error( $prepared ) ) {
return $prepared;
}
$key = LLMS_REST_API()->keys()->create( $prepared );
if ( is_wp_error( $request ) ) {
$request->add_data( array( 'status' => 400 ) );
return $request;
}
// Fields registered via `register_rest_field()`.
$fields_update = $this->update_additional_fields_for_object( $key, $request );
if ( is_wp_error( $fields_update ) ) {
return $fields_update;
}
$request->set_param( 'context', 'edit' );
$response = $this->prepare_item_for_response( $key, $request );
$response->set_status( 201 );
$response->header( 'Location', rest_url( sprintf( '%s/%s/%d', $this->namespace, $this->rest_base, $key->get( 'id' ) ) ) );
return $response;
}
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
| Version | Description |
|---|---|
| 1.0.0-beta.27 | Handle custom rest fields registered via register_rest_field(). |
| 1.0.0-beta.1 | Introduced. |