What's New in Laravel 13.19 | Mohamed Said        [  ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png)   Mohamed Said Laravel Backend Engineer  ](https://msaied.com) [ Home ](https://msaied.com) [ Projects ](https://msaied.com/projects) [ Articles  ](https://msaied.com/articles) [ Certificates ](https://msaied.com/certificates) [ Contact ](https://msaied.com#contact-section) 

       [  ](https://github.com/EG-Mohamed)       

 [ Home ](https://msaied.com) [ Projects ](https://msaied.com/projects) [ Articles ](https://msaied.com/articles) [ Certificates ](https://msaied.com/certificates) [ Contact ](https://msaied.com#contact-section) 

  [ home ](https://msaied.com)    [ articles ](https://msaied.com/articles)    HTTP Query Method Support in Laravel 13.19        On this page       1. [  What's New in Laravel 13.19 ](#whats-new-in-laravel-1319)
2. [  Http::query() Client Method ](#codehttpquerycode-client-method)
3. [  query() and queryJson() Testing Helpers ](#codequerycode-and-codequeryjsoncode-testing-helpers)
4. [  reduceInto() Collection Method ](#codereduceintocode-collection-method)
5. [  counted() String Helper ](#codecountedcode-string-helper)
6. [  Queue Improvements ](#queue-improvements)
7. [  Other Fixes ](#other-fixes)
8. [  Key Takeaways ](#key-takeaways)

  ![HTTP Query Method Support in Laravel 13.19](https://cdn.msaied.com/394/4c917aad559beddb5eeb9a7a1e107f4c.png)

 [  Laravel ](https://msaied.com/articles?category=laravel)  #Laravel   #Laravel 13   #HTTP Client   #Collections   #Queue   #SQS  

 HTTP Query Method Support in Laravel 13.19 
============================================

     8 Jul 2026      3 min read    ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MJ.jpg)  Mohamed Said  

       Table of contents

1. [  01   What's New in Laravel 13.19  ](#whats-new-in-laravel-1319)
2. [  02   Http::query() Client Method  ](#codehttpquerycode-client-method)
3. [  03   query() and queryJson() Testing Helpers  ](#codequerycode-and-codequeryjsoncode-testing-helpers)
4. [  04   reduceInto() Collection Method  ](#codereduceintocode-collection-method)
5. [  05   counted() String Helper  ](#codecountedcode-string-helper)
6. [  06   Queue Improvements  ](#queue-improvements)
7. [  07   Other Fixes  ](#other-fixes)
8. [  08   Key Takeaways  ](#key-takeaways)

 What's New in Laravel 13.19
---------------------------

Laravel 13.19.0 was released on July 8, 2026, rounding out support for the HTTP QUERY method and shipping a handful of ergonomic improvements across collections, strings, and queues.

---

### `Http::query()` Client Method

The HTTP QUERY verb carries its parameters in the **request body** rather than the URL — useful for search-style endpoints that need structured input without polluting the query string. Laravel 13.19 adds a first-class `Http::query()` method that mirrors the existing `post()`, `put()`, and `patch()` methods:

```php
$response = Http::query('https://api.example.com/search', [
    'filter' => ['status' => 'active'],
]);

```

Data is sent as JSON by default. Chaining `asForm()` switches to form-encoded. Existing URL query handling — `withQueryParameters()` and the `$query` argument on `get()` — is completely unchanged.

---

### `query()` and `queryJson()` Testing Helpers

To complement the client addition, the testing layer gains matching helpers so you can exercise QUERY routes without reaching for `call()` manually:

```php
Route::match(['QUERY'], '/search', fn () => request()->input('filter'));

$this->queryJson('/search', ['filter' => 'active'])->assertOk();

```

They follow the same pattern as `delete()` / `deleteJson()`, placing test data in the request body rather than the URL.

---

### `reduceInto()` Collection Method

`reduceInto()` is a variant of `reduce()` designed for **mutable accumulators**. The callback's return value is ignored, so object accumulators require no `return` statement:

```php
$stats = $orders->reduceInto(new OrderStats, function ($stats, $order) {
    $stats->total += $order->amount;
    $stats->count++;
    $stats->largest = max($stats->largest, $order->amount);
});

```

For array or scalar accumulators, accept the accumulator by reference:

```php
$tagsMap = $posts->reduceInto([], function (&$map, $post) {
    $post->tags->each(fn ($tag) => $map[$tag][] = $post->title);
});

```

This removes the boilerplate `return $accumulator` that standard `reduce()` requires at the end of every callback.

---

### `counted()` String Helper

`Str::counted()` and its `Stringable` equivalent combine pluralization and count-prepending into a single call — a shorthand for `plural($count, prependCount: true)`:

```php
str('order')->counted(1); // "1 order"
str('order')->counted(2); // "2 orders"

```

Handy for generating user-facing labels without manual string interpolation.

---

### Queue Improvements

Two notable queue changes ship in this release:

- **Bulk SQS dispatch via `SendMessageBatch`** — pushing multiple jobs to SQS now batches them into a single API call instead of one request per job, reducing overhead when dispatching at scale.
- **Reserved-job inspection on the queue fake** — tests can now assert on jobs that have been picked up by a worker but not yet completed, closing a gap in queue test coverage.

---

### Other Fixes

- `deletedAtColumn` is now passed through to `assertSoftDeleted()` and `assertNotSoftDeleted()`.
- Mail config options can be defined without a name.
- `ComponentAttributeBag::merge()` now terminates the default style value with a semicolon.
- Additional tests for relative date where clauses and the date rule's `past()`/`future()` methods.

---

Key Takeaways
-------------

- `Http::query()` gives you a clean API for the HTTP QUERY verb with JSON body support out of the box.
- `query()` / `queryJson()` testing helpers keep your test suite consistent with the new client method.
- `reduceInto()` eliminates the `return $accumulator` boilerplate when folding into mutable objects.
- `Str::counted()` / `Stringable::counted()` simplify count-aware string generation.
- SQS bulk dispatch via `SendMessageBatch` reduces API calls when pushing many jobs at once.

---

*Source: [HTTP Query Method Support in Laravel 13.19 — Laravel News](https://laravel-news.com/laravel-13-19-0)*

 Found this useful?

          [  ](https://twitter.com/intent/tweet?url=https%3A%2F%2Fmsaied.com%2Farticles%2Fhttp-query-method-support-in-laravel-1319&text=HTTP+Query+Method+Support+in+Laravel+13.19) [  ](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fmsaied.com%2Farticles%2Fhttp-query-method-support-in-laravel-1319) 

 Frequently Asked Questions 
----------------------------

  3 questions  

     Q01  What is the HTTP QUERY method and how does Laravel 13.19 support it?        The HTTP QUERY verb is similar to GET but carries its parameters in the request body rather than the URL. Laravel 13.19 adds Http::query() on the HTTP client and query()/queryJson() on the testing layer, so you can both send and test QUERY requests using the same conventions as other HTTP verbs. 

      Q02  How does reduceInto() differ from reduce() in Laravel collections?        With reduce(), your callback must return the accumulator on every iteration. With reduceInto(), the return value is ignored — you mutate the accumulator directly. This is cleaner when the accumulator is an object, and you can still use a reference parameter (&amp;$map) for arrays or scalars. 

      Q03  Does the SQS bulk dispatch change require any code updates?        No. The switch from individual SQS API calls to SendMessageBatch is handled internally by the framework. Existing dispatch calls work without modification and will automatically benefit from the reduced number of API requests. 

  Continue reading

 More Articles 
---------------

 [ View all    ](https://msaied.com/articles) 

 [ ![Blackfire & Xdebug Profiling in Laravel: Finding Real Bottlenecks in Production-Like Environments](https://cdn.msaied.com/393/a8dfc4ec52c4febc3ef41a491eb452ea.png) laravel performance profiling 

### Blackfire &amp; Xdebug Profiling in Laravel: Finding Real Bottlenecks in Production-Like Environments

Stop guessing where your Laravel app is slow. This guide walks through practical Blackfire and Xdebug profilin...

  ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MJ.jpg)  Mohamed Said 

 8 Jul 2026     4 min read  

  Read    

 ](https://msaied.com/articles/blackfire-xdebug-profiling-in-laravel-finding-real-bottlenecks-in-production-like-environments) [ ![Laravel Cloud Security Defaults Behind Every Deploy](https://cdn.msaied.com/395/28df8f542fbe81ecee3ba4ad897f36d6.png) Laravel Cloud Security PHP 

### Laravel Cloud Security Defaults Behind Every Deploy

Laravel Cloud ships WAF rules, DDoS mitigation, automatic PHP patching, SOC 2 Type II compliance, and deploy-t...

  ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MJ.jpg)  Mohamed Said 

 8 Jul 2026     4 min read  

  Read    

 ](https://msaied.com/articles/laravel-cloud-security-defaults-behind-every-deploy) [ ![Laravel Concurrency Facade and Process Pools for Parallel Work](https://cdn.msaied.com/392/fd3c54592355d96441888fa19c2674a0.png) laravel concurrency process 

### Laravel Concurrency Facade and Process Pools for Parallel Work

The Laravel Concurrency facade and Process pools let you run independent tasks in parallel without reaching fo...

  ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MJ.jpg)  Mohamed Said 

 8 Jul 2026     3 min read  

  Read    

 ](https://msaied.com/articles/laravel-concurrency-facade-and-process-pools-for-parallel-work-3) 

   [  ![Mohamed Said](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png)   Mohamed Said Laravel Backend Engineer  ](https://msaied.com)Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

Explore

- [Home](https://msaied.com)
- [Projects](https://msaied.com/projects)
- [Articles](https://msaied.com/articles)
- [Certificates](https://msaied.com/certificates)
- [Contact](https://msaied.com#contact-section)

Connect

- [   hello@msaied.com ](mailto:hello@msaied.com)
- [   +20 109 461 9204 ](tel:+201094619204)

© 2026 Mohamed Said. All rights reserved.

 [  ](https://github.com/EG-Mohamed) [  ](https://www.linkedin.com/in/msaiedm/) [  ](https://wa.me/201094619204) [  ](mailto:hello@msaied.com) [  ](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)
