tokenData['scope']; if (is_string($scopes)) { $scopes = explode(' ', $scopes); } if (! in_array('create', $scopes, true)) { throw new InvalidTokenScopeException; } $dataArray = $data->toArray(); $location = match (true) { isset($dataArray['like-of']) => resolve(LikeService::class)->create($dataArray)->url, isset($dataArray['bookmark-of']) => resolve(BookmarkService::class)->create($dataArray)->uri, isset($dataArray['name']) => resolve(ArticleService::class)->create($dataArray)->link, default => resolve(NoteService::class)->create($dataArray)->uri, }; return [ 'response' => 'created', 'url' => $location, ]; } }