Skip to content

Commit 4bdfd60

Browse files
authored
fix(symfony, laravel) skip webhooks when generates routing (#7175)
1 parent 79d08db commit 4bdfd60

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

src/Laravel/routes/api.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
use ApiPlatform\Metadata\HttpOperation;
2323
use ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface;
2424
use ApiPlatform\Metadata\Resource\Factory\ResourceNameCollectionFactoryInterface;
25+
use ApiPlatform\OpenApi\Attributes\Webhook;
2526
use Illuminate\Support\Facades\Route;
2627

2728
$globalMiddlewares = config()->get('api-platform.routes.middleware', []);
@@ -34,6 +35,10 @@
3435
foreach ($resourceNameCollectionFactory->create() as $resourceClass) {
3536
foreach ($resourceMetadataFactory->create($resourceClass) as $resourceMetadata) {
3637
foreach ($resourceMetadata->getOperations() as $operation) {
38+
if ($operation->getOpenapi() instanceof Webhook) {
39+
continue;
40+
}
41+
3742
if ($operation->getRouteName()) {
3843
continue;
3944
}

src/Symfony/Routing/ApiLoader.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
use ApiPlatform\Metadata\Exception\RuntimeException;
1717
use ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface;
1818
use ApiPlatform\Metadata\Resource\Factory\ResourceNameCollectionFactoryInterface;
19+
use ApiPlatform\OpenApi\Attributes\Webhook;
1920
use Symfony\Component\Config\FileLocator;
2021
use Symfony\Component\Config\Loader\Loader;
2122
use Symfony\Component\Config\Resource\DirectoryResource;
@@ -57,6 +58,10 @@ public function load(mixed $data, ?string $type = null): RouteCollection
5758
foreach ($this->resourceNameCollectionFactory->create() as $resourceClass) {
5859
foreach ($this->resourceMetadataFactory->create($resourceClass) as $resourceMetadata) {
5960
foreach ($resourceMetadata->getOperations() as $operationName => $operation) {
61+
if ($operation->getOpenapi() instanceof Webhook) {
62+
continue;
63+
}
64+
6065
if ($operation->getRouteName()) {
6166
continue;
6267
}

0 commit comments

Comments
 (0)