{"adoption": {"forks": 127, "observed_at": "2026-08-28T04:06:51.442344+00:00", "stars": 2436}, "canonical_url": "https://ross.abutalabs.com/products/saloon", "card": {"archived": false, "artifact_type": "library", "description": "🤠 Build beautiful API integrations and SDKs with Saloon", "domain": ["web-development", "apis", "developer-tools", "backend"], "enriched": true, "function": ["http-client", "api-framework", "sdk", "middleware", "caching", "rate-limiting", "testing"], "health_score": 82, "homepage": "https://docs.saloon.dev", "language": "PHP", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["saloonphp/saloon"], "name": "saloonphp/saloon", "platform": ["php"], "pushed_at": "2026-03-25T20:55:31+00:00", "repo": "saloonphp/saloon", "stars": 2436, "tags": ["api-integrations", "api-wrapper", "guzzle", "framework-agnostic", "oauth2", "pagination", "sdk-builder", "laravel"], "topics": ["laravel", "api", "api-wrapper", "php", "sdk", "guzzle-wrapper", "api-integrations", "framework-agnostic", "saloon"], "urls": [], "use_cases": ["build a PHP SDK for a third-party REST API", "wrap an external API in clean connector and request classes", "handle OAuth2 authentication for an API integration", "add caching and rate limiting to API calls", "paginate through API results with cursor or offset pagination", "mock and record API responses in tests", "generate an SDK from an OpenAPI spec or Postman collection"], "what_it_is": "Saloon is a PHP library for rapidly building third-party API integrations and SDKs using Connector and Request classes. It is framework-agnostic with a dedicated Laravel plugin and ships with plugins for caching, rate limiting, pagination, OAuth2, and testing utilities.", "when_to_avoid": ["you just need a one-off simple HTTP request - plain Guzzle or the PSR-18 client is lighter", "you are not working in PHP", "you need a full-featured API gateway or server-side API framework rather than a client-side integration library"], "when_to_choose": ["you are building reusable API integrations or SDKs in PHP", "you want a standardized, testable structure for API calls across a team", "you use Laravel and want Artisan generators, facades, and testing helpers", "you need built-in OAuth2, pagination, caching, or rate-limit handling"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/saloon", "repo": "saloonphp/saloon", "role": "main", "score": 80}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.442344+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:31:01.543213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "695d3cc6490a65b11a0134111c559e36e2d0a867a092b3e103a379c4ad35bafe", "fetched_at": "2026-08-29T10:12:28.837804+00:00", "kind": "homepage", "missing": false, "url": "https://docs.saloon.dev"}, {"content_hash": "db222660bc52fd5e0e74bfba5a4e1f0ea55cb0766a7471841d6ef17d421e4b4d", "fetched_at": "2026-08-29T10:12:28.840777+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/the-basics/installation"}, {"content_hash": "b177d026fa10277215e4bbb824ad040b3d3c07cefd5d6a5bfc6024303ee110c1", "fetched_at": "2026-08-29T10:12:28.842703+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/pagination"}, {"content_hash": "229efd0e355c6e4583b28b5b4a073c2552f12a7f81af44e793754f6773b1c6c1", "fetched_at": "2026-08-29T10:12:28.844909+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/laravel-integration"}, {"content_hash": "ba58afdd1c151c430c39f5430512789bf9c4a3c7a79aa13d62fb13114ad9a7cc", "fetched_at": "2026-08-29T10:12:28.846466+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/caching-responses"}, {"content_hash": "9ba968a1a24fa51467249a4d1c073eb8975ee77e8c5d1485b0c0304111516510", "fetched_at": "2026-08-29T10:12:28.848120+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/handling-rate-limits"}, {"content_hash": "d388e5cc296106ab13dc74e9ed730311913a25eef893f9b00ea990993ac85c9e", "fetched_at": "2026-08-29T10:12:28.850019+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/lawman"}, {"content_hash": "895d4e509b40c4e69d0a4ba38d341146ee00bf7df826b48f4e4d6d3c921ec01f", "fetched_at": "2026-08-29T10:12:28.851704+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/sdk-generator"}, {"content_hash": "4c3fc91907d7b18d28f790ab05288972ba5e8ec0ac9b28816458b12158a9a98b", "fetched_at": "2026-08-29T10:12:28.853174+00:00", "kind": "site_page", "missing": false, "url": "https://docs.saloon.dev/installable-plugins/xml-wrangler"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 74, "longevity": 100, "rhythm": 76}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_readme"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1790, "days_push": 161, "days_rel": 161, "gap_med": 15.5, "n_releases_24m": 13}, "score": 80, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}