diff --git a/apps/cloud_federation_api/lib/Controller/RequestHandlerController.php b/apps/cloud_federation_api/lib/Controller/RequestHandlerController.php index 02b8725afe2..21c557354ff 100644 --- a/apps/cloud_federation_api/lib/Controller/RequestHandlerController.php +++ b/apps/cloud_federation_api/lib/Controller/RequestHandlerController.php @@ -173,15 +173,18 @@ class RequestHandlerController extends Controller { ); } - $user = $this->userManager->get($shareWith); - $recipientDisplayName = ''; - if ($user) { - $recipientDisplayName = $user->getDisplayName(); + $responseData = ['recipientDisplayName' => '']; + if ($shareType === 'user') { + $user = $this->userManager->get($shareWith); + if ($user) { + $responseData = [ + 'recipientDisplayName' => $user->getDisplayName(), + 'recipientUserId' => $user->getUID(), + ]; + } } - return new JSONResponse( - ['recipientDisplayName' => $recipientDisplayName], - Http::STATUS_CREATED); + return new JSONResponse($responseData, Http::STATUS_CREATED); } /** diff --git a/apps/cloud_federation_api/lib/ResponseDefinitions.php b/apps/cloud_federation_api/lib/ResponseDefinitions.php index d9a55e13e07..80195c54137 100644 --- a/apps/cloud_federation_api/lib/ResponseDefinitions.php +++ b/apps/cloud_federation_api/lib/ResponseDefinitions.php @@ -12,6 +12,7 @@ namespace OCA\CloudFederationAPI; /** * @psalm-type CloudFederationAPIAddShare = array{ * recipientDisplayName: string, + * recipientUserId?: string, * } * * @psalm-type CloudFederationAPIError = array{ diff --git a/apps/cloud_federation_api/openapi.json b/apps/cloud_federation_api/openapi.json index a6e529d4f89..d15c7cef813 100644 --- a/apps/cloud_federation_api/openapi.json +++ b/apps/cloud_federation_api/openapi.json @@ -28,6 +28,9 @@ "properties": { "recipientDisplayName": { "type": "string" + }, + "recipientUserId": { + "type": "string" } } },