guard_admin(); if ( $check ) { return $check; } $access = $this->assert_team_member( $team_member_id ); if ( $access ) { return $access; } try { $request = new \WP_REST_Request( 'GET', '/booktics/v1/team-members/' . $team_member_id ); $request->set_url_params( [ 'id' => $team_member_id ] ); $controller = new \Booktics\Team_Member\Controllers\Team_Member_Controller(); $member = $this->extract_response( $controller->get_item( $request ), 'Failed to retrieve team member.' ); if ( isset( $member['error'] ) ) { return $member; } return $this->shape_team_member( $member, true ); } catch ( \Throwable $e ) { Log::error( 'Booktics_Get_Team_Member_Tool error', [ 'error' => $e->getMessage() ] ); return [ 'error' => 'Failed to retrieve team member: ' . $e->getMessage() ]; } } }