Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Telefonkatalog

Telefonkatalog Laravel Package

helgesverre/telefonkatalog

A Laravel package for searching Norwegian phone directory data via Telefonkatalogen. Look up people and businesses by name, phone number, or address and get structured results, making it easy to add contact and phone-number lookup to your app.

View on GitHub
Deep Wiki
Context7

Query public Norwegian phone numbers to retrieve structured personal data.

Frequently asked questions about Telefonkatalog
How do I install helgesverre/telefonkatalog in a Laravel app?
Install it with Composer using composer require helgesverre/telefonkatalog. The service provider is auto-discovered, and there are no database migrations, queue workers, or infrastructure changes to set up. If the package ships a publishable config file, publish it and set your preferred defaults. A single engineer can typically complete the integration in well under a day, excluding legal review of the directory sources' terms.
Which Laravel and PHP versions does telefonkatalog support?
Version 1.3.0 targets Laravel 11 and 12 on PHP 8.2 or newer, with Testbench ^9.0|^10.0 and Pest v3 for its own test suite. Laravel 10 support was dropped in v1.3.0, which was shipped as a minor version bump rather than a major one. Always verify the PHP constraint against your runtime images before upgrading.
How do I look up a Norwegian phone number or person with this package?
The package queries Norwegian directory sources such as Gulesider and Opplysningen1890 and returns structured results for lookups by name, phone number, or address. You call it from your application and get back structured phone-number data rather than raw HTML. Because it is a thin third-party adapter, call it from a service you own rather than directly inside controllers or Eloquent models.
Does telefonkatalog cache results or include rate limiting?
The release notes do not mention any built-in caching, rate limiting, or backoff, so assume there is none. Both upstream sources are consumer websites that can throttle or block your IP without notice. Add your own cache layer for repeated lookups and a retry/backoff policy around the adapter before using it in production.
How do I tell a genuine 'not found' apart from a blocked or failed lookup?
Because results come from scraping, an empty response is not authoritative proof that a number or person does not exist. Your adapter should distinguish transport failures such as 429, 403, 5xx, and timeouts from genuine empty results, ideally with a typed result object or dedicated exception. Also confirm whether the Opplysningen1890 missing-phone-number fix returns a typed result or a silent null, and handle both cases explicitly.
Is using telefonkatalog GDPR compliant, and can I scrape these directories legally?
Directory listings include personal data for natural persons, so GDPR applies, and scraping may conflict with the source sites' terms of service. Whether it is acceptable depends on your use case, for example internal enrichment versus end-user-facing lookup. Get a written legal position before production use, and treat logged results as PII with appropriate retention limits.
How fragile are the directory lookups, and what happens when Gulesider changes its markup?
Scraping is the dominant risk: v1.3.0 had to rewrite the Gulesider scraper from __NEXT_DATA__ to JSON-LD after the site structure changed. There is no upstream API contract or SLA, so sources can alter markup, add bot protection, or block IPs at any time. Pin the package version, monitor failure rates, and expect patch latency when a source breaks again.
Can I use helgesverre/telefonkatalog on Laravel 10?
Not on v1.3.0, which is a hard stop for Laravel 10. Pin the constraint explicitly, for example "helgesverre/telefonkatalog": "~1.2.0", so an unrestricted composer update cannot pull a version your framework cannot run. Be aware that the Laravel 10 drop shipped as a minor bump, so do not assume a ^1.0 constraint is safe, and never upgrade Laravel and this package in the same change.
How should I structure my code so I can swap out the phone directory source later?
Define your own interface, such as PhoneLookupService, and implement it with an adapter that wraps this package. Keep that adapter at the edge of the system rather than calling the package inline from request handlers or domain models. This contains the vendor coupling so you can swap sources or add a fallback provider without touching business logic.
How do I test code that uses telefonkatalog?
The package itself tests against Orchestra Testbench with Pest v3, but your application tests should not hit live directory sites. Fake your own PhoneLookupService interface in unit and feature tests, and cover error paths such as 429, 403, timeouts, and empty results with stubs. Keep any real-scraper tests in a small, separately tagged integration suite since they depend on external markup.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource