{"openapi":"3.1.0","info":{"title":"Packagist API","version":"1.0.0","description":"The Packagist.org registry — the package ecosystem of PHP and Composer — as an API. Look up any package (vendor/package, e.g. monolog/monolog, laravel/framework, symfony/console) for its description, type, total/monthly/daily download counts, GitHub stars, forks and open issues, number of dependents, latest stable version and its PHP requirement; search the registry by keyword and tag; and list a package's full version history (newest stable first). Live from the official Packagist API. Ideal for package dashboards, dependency and supply-chain tooling, developer portals and PHP ecosystem analytics. Open data from Packagist.org.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/packagist-api","description":"oanor gateway"}],"tags":[{"name":"Packagist"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/package":{"get":{"operationId":"get_v1_package","tags":["Packagist"],"summary":"Full metadata for a package","description":"","parameters":[{"name":"name","in":"query","required":true,"description":"vendor/package, e.g. monolog/monolog","schema":{"type":"string"},"example":"monolog/monolog"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"package":{"name":"monolog/monolog","type":"library","language":"PHP","downloads":{"daily":326529,"total":997413442,"monthly":15209900},"dependents":8335,"repository":"https://github.com/Seldaek/monolog","suggesters":615,"description":"Sends your logs to files, sockets, inboxes, databases and various web services","github_forks":1905,"github_stars":21388,"packagist_url":"https://packagist.org/packages/monolog/monolog","version_count":99,"latest_license":["MIT"],"latest_version":"3.10.0","github_open_issues":29,"latest_requires_php":">=8.1"}},"meta":{"timestamp":"2026-05-31T10:58:19.052Z","request_id":"6d47c776-302e-45ee-af82-c39bb0795dda"},"status":"ok","message":"Package retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/search":{"get":{"operationId":"get_v1_search","tags":["Packagist"],"summary":"Search the registry","description":"","parameters":[{"name":"q","in":"query","required":true,"description":"Search term","schema":{"type":"string"},"example":"http"},{"name":"tags","in":"query","required":false,"description":"Filter by a Composer tag","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Results per page (1-100, default 20)","schema":{"type":"string"},"example":"20"},{"name":"page","in":"query","required":false,"description":"Page number","schema":{"type":"string"},"example":"1"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"page":1,"count":20,"limit":20,"query":"http","total":11311,"results":[{"url":"https://packagist.org/packages/guzzlehttp/guzzle","name":"guzzlehttp/guzzle","favers":24297,"downloads":1026009839,"repository":"https://github.com/guzzle/guzzle","description":"Guzzle is a PHP HTTP client library"},{"url":"https://packagist.org/packages/psr/http-message","name":"psr/http-message","favers":7131,"downloads":1063161505,"repository":"https://github.com/php-fig/http-message","description":"Common interface for HTTP messages"},{"url":"https://packagist.org/packages/symfony/http-kernel","name":"symfony/http-kernel","favers":8141,"downloads":852919438,"repository":"https://github.com/symfony/http-kernel","description":"Provides a structured process for converting a Request into a Response"},{"url":"https://packagist.org/packages/symfony/http-foundation","name":"symfony/http-foundation","favers":8709,"downloads":909811841,"repository":"https://github.com/symfony/http-foundation","description":"Defines an object-oriented layer for the HTTP specification"},{"url":"https://packagist.org/packages/guzzlehttp/psr7","name":"guzzlehttp/psr7","favers":8007,"downloads":1051975599,"repository":"https://github.com/guzzle/psr7","description":"PSR-7 message implementation that also provides common utility methods"},{"url":"https://packagist.org/packages/symfony/routing","name":"symfony/routing","favers":7694,"downloads":819274081,"repository":"https://github.com/symfony/routing","description":"Maps an HTTP request to a set of configuration variables"},{"url":"https://packagist.org/packages/mobiledetect/mobiledetectlib","name":"mobiledetect/mobiledetectlib","favers":10780,"downloads":166883076,"repository":"https://github.com/serbanghita/Mobile-Detect","description":"Mobile_Detect is a lightweight PHP class for detecting mobile devices. It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment."},{"url":"https://packagist.org/packages/symfony/psr-http-message-bridge","name":"symfony/psr-http-message-bridge","favers":1301,"downloads":312196585,"repository":"https://github.com/symfony/psr-http-message-bridge","description":"PSR HTTP message bridge"},{"url":"https://packagist.org/packages/symfony/http-client","name":"symfony/http-client","favers":2052,"downloads":330098728,"repository":"https://github.com/symfony/http-client","description":"Provides powerful methods to fetch HTTP resources synchronously or asynchronously"},{"url":"https://packagist.org/packages/psr/http-factory","name":"psr/http-factory","favers":1893,"downloads":728226688,"repository":"https://github.com/php-fig/http-factory","description":"PSR-17: Common interfaces for PSR-7 HTTP message factories"},{"url":"https://packagist.org/packages/psr/http-client","name":"psr/http-client","favers":1732,"downloads":713803224,"repository":"https://github.com/php-fig/http-client","description":"Common interface for HTTP clients"},{"url":"https://packagist.org/packages/php-http/httplug","name":"php-http/httplug","favers":2602,"downloads":319459221,"repository":"https://github.com/php-http/httplug","description":"HTTPlug, the HTTP client abstraction for PHP"},{"url":"https://packagist.org/packages/symfony/security-http","name":"symfony/security-http","favers":1716,"downloads":172638082,"repository":"https://github.com/symfony/security-http","description":"Symfony Security Component - HTTP Integration"},{"url":"https://packagist.org/packages/symfony/http-client-contracts","name":"symfony/http-client-contracts","favers":1979,"downloads":419062106,"repository":"https://github.com/symfony/http-client-contracts","description":"Generic abstractions related to HTTP clients"},{"url":"https://packagist.org/packages/symfony/web-link","name":"symfony/web-link","favers":1428,"downloads":104127782,"repository":"https://github.com/symfony/web-link","description":"Manages links between resources"},{"url":"https://packagist.org/packages/psr/link","name":"psr/link","favers":2510,"downloads":149794195,"repository":"https://github.com/php-fig/link","description":"Common interfaces for HTTP links"},{"url":"https://packagist.org/packages/php-http/message","name":"php-http/message","favers":1321,"downloads":273537198,"repository":"https://github.com/php-http/message","description":"HTTP Message related tools"},{"url":"https://packagist.org/packages/php-http/discovery","name":"php-http/discovery","favers":1328,"downloads":325183137,"repository":"https://github.com/php-http/discovery","description":"Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations"},{"url":"https://packagist.org/packages/php-http/client-common","name":"php-http/client-common","favers":1053,"downloads":233308915,"repository":"https://github.com/php-http/client-common","description":"Common HTTP Client implementations and tools for HTTPlug"},{"url":"https://packagist.org/packages/league/uri-interfaces","name":"league/uri-interfaces","favers":537,"downloads":226545438,"repository":"https://github.com/thephpleague/uri-interfaces","description":"Common tools for parsing and resolving RFC3987/RFC3986 URI"}]},"meta":{"timestamp":"2026-05-31T10:58:19.116Z","request_id":"93b1d9b3-5bf7-4bd9-ba59-4a0c081a7cc8"},"status":"ok","message":"Packages searched","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/versions":{"get":{"operationId":"get_v1_versions","tags":["Packagist"],"summary":"Version history of a package","description":"","parameters":[{"name":"name","in":"query","required":true,"description":"vendor/package, e.g. monolog/monolog","schema":{"type":"string"},"example":"monolog/monolog"},{"name":"limit","in":"query","required":false,"description":"Max versions (1-300, default 50)","schema":{"type":"string"},"example":"50"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"count":50,"total":99,"package":"monolog/monolog","versions":[{"php":">=8.1","license":["MIT"],"version":"3.10.0","released":"2026-01-02T08:56:05+00:00","normalized":"3.10.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.9.0","released":"2025-03-24T10:02:05+00:00","normalized":"3.9.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.8.1","released":"2024-12-05T17:15:07+00:00","normalized":"3.8.1.0"},{"php":">=8.1","license":["MIT"],"version":"3.8.0","released":"2024-11-12T13:57:08+00:00","normalized":"3.8.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.7.0","released":"2024-06-28T09:40:51+00:00","normalized":"3.7.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.6.0","released":"2024-04-12T21:02:21+00:00","normalized":"3.6.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.5.0","released":"2023-10-27T15:32:31+00:00","normalized":"3.5.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.4.0","released":"2023-06-21T08:46:11+00:00","normalized":"3.4.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.3.1","released":"2023-02-06T13:46:10+00:00","normalized":"3.3.1.0"},{"php":">=8.1","license":["MIT"],"version":"3.3.0","released":"2023-02-06T13:12:20+00:00","normalized":"3.3.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.2.0","released":"2022-07-24T12:00:55+00:00","normalized":"3.2.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.1.0","released":"2022-06-09T09:09:00+00:00","normalized":"3.1.0.0"},{"php":">=8.1","license":["MIT"],"version":"3.0.0","released":"2022-05-10T10:39:55+00:00","normalized":"3.0.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.11.0","released":"2026-01-01T13:05:00+00:00","normalized":"2.11.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.10.0","released":"2024-11-12T12:43:37+00:00","normalized":"2.10.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.9.3","released":"2024-04-12T20:52:51+00:00","normalized":"2.9.3.0"},{"php":">=7.2","license":["MIT"],"version":"2.9.2","released":"2023-10-27T15:25:26+00:00","normalized":"2.9.2.0"},{"php":">=7.2","license":["MIT"],"version":"2.9.1","released":"2023-02-06T13:44:46+00:00","normalized":"2.9.1.0"},{"php":">=7.2","license":["MIT"],"version":"2.9.0","released":"2023-02-05T13:07:32+00:00","normalized":"2.9.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.8.0","released":"2022-07-24T11:55:47+00:00","normalized":"2.8.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.7.0","released":"2022-06-09T08:59:12+00:00","normalized":"2.7.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.6.0","released":"2022-05-10T09:36:00+00:00","normalized":"2.6.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.5.0","released":"2022-04-08T15:43:54+00:00","normalized":"2.5.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.4.0","released":"2022-03-14T12:44:37+00:00","normalized":"2.4.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.5","released":"2021-10-01T21:08:31+00:00","normalized":"2.3.5.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.4","released":"2021-09-15T11:27:21+00:00","normalized":"2.3.4.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.3","released":"2021-09-14T18:40:13+00:00","normalized":"2.3.3.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.2","released":"2021-07-23T07:42:52+00:00","normalized":"2.3.2.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.1","released":"2021-07-14T11:56:39+00:00","normalized":"2.3.1.0"},{"php":">=7.2","license":["MIT"],"version":"2.3.0","released":"2021-07-05T11:34:13+00:00","normalized":"2.3.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.2.0","released":"2020-12-14T13:15:25+00:00","normalized":"2.2.0.0"},{"php":">=7.2","license":["MIT"],"version":"2.1.1","released":"2020-07-23T08:41:23+00:00","normalized":"2.1.1.0"},{"php":">=7.2","license":["MIT"],"version":"2.1.0","released":"2020-05-22T08:12:19+00:00","normalized":"2.1.0.0"},{"php":"^7.2","license":["MIT"],"version":"2.0.2","released":"2019-12-20T14:22:59+00:00","normalized":"2.0.2.0"},{"php":"^7.2","license":["MIT"],"version":"2.0.1","released":"2019-11-13T10:27:43+00:00","normalized":"2.0.1.0"},{"php":"^7.2","license":["MIT"],"version":"2.0.0","released":"2019-08-30T09:56:44+00:00","normalized":"2.0.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.27.1","released":"2022-06-09T08:53:42+00:00","normalized":"1.27.1.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.27.0","released":"2022-03-13T20:29:46+00:00","normalized":"1.27.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.26.1","released":"2021-05-28T08:32:12+00:00","normalized":"1.26.1.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.26.0","released":"2020-12-14T12:56:38+00:00","normalized":"1.26.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.5","released":"2020-07-23T08:35:51+00:00","normalized":"1.25.5.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.4","released":"2020-05-22T07:31:27+00:00","normalized":"1.25.4.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.3","released":"2019-12-20T14:15:16+00:00","normalized":"1.25.3.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.2","released":"2019-11-13T10:00:05+00:00","normalized":"1.25.2.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.1","released":"2019-09-06T13:49:17+00:00","normalized":"1.25.1.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.25.0","released":"2019-09-06T12:21:24+00:00","normalized":"1.25.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.24.0","released":"2018-11-05T09:00:11+00:00","normalized":"1.24.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.23.0","released":"2017-06-19T01:22:40+00:00","normalized":"1.23.0.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.22.1","released":"2017-03-13T07:08:03+00:00","normalized":"1.22.1.0"},{"php":">=5.3.0","license":["MIT"],"version":"1.22.0","released":"2016-11-26T00:15:39+00:00","normalized":"1.22.0.0"}]},"meta":{"timestamp":"2026-05-31T10:58:21.281Z","request_id":"49160a2e-c515-4285-8f20-8c1b900ce3f1"},"status":"ok","message":"Versions retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Source & endpoints","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Live Packagist registry data. /v1/package = full metadata (description, type, downloads, GitHub stars/forks, dependents, latest version + PHP requirement) for a vendor/package; /v1/search = search the registry; /v1/versions = the version list of a package (newest first). Package names are vendor/package, e.g. monolog/monolog.","source":"Packagist.org (the PHP / Composer package registry)","endpoints":["/v1/package","/v1/search","/v1/versions","/v1/meta"]},"meta":{"timestamp":"2026-05-31T10:58:21.331Z","request_id":"20af58ba-0f3f-4982-b543-a00f71aebb1c"},"status":"ok","message":"Meta retrieved","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":3600,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":420,"monthly_call_quota":48600,"rps_limit":8,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1240,"monthly_call_quota":238800,"rps_limit":20,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":3360,"monthly_call_quota":1197000,"rps_limit":50,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/packagist-api"}