equinix — Equinix IBX data centers
| Config | config/connectors/equinix.yaml |
| Parser | apps/worker/src/connectors/operators1/equinix.ts → equinix_facility_v1 |
| Kind / priority | operator / 1 |
| License / attribution | Publicly accessible operator pages; factual data only; © Equinix, Inc. |
| Cadence | facility pages weekly · index monthly · sitemap weekly |
What is crawled
- Sitemap
https://www.equinix.com/sitemap-core.xml(the/sitemap.xmlindex also listssitemap-resources.xmlandsitemap-prs.xml; the latter returns HTML, not XML). - Facility pages:
/data-centers/<region>-colocation/<country>-colocation/<metro>-data-centers/<code>(code =[a-z]{2,3}\d{1,2}[a-z]?, e.g.dc2,fr5,ty11). Metro / country / region pages areindex. - Newsroom: disabled. Press releases live on
newsroom.equinix.com(RSShttps://newsroom.equinix.com/press-releases-global?pagetemplate=rss, articles/YYYY-MM-DD-<slug>). Those pages are served normally (HTTP 200, ~20 KB of text) but embed Cloudflare's/cdn-cgi/challenge-platform/beacon, which the sharedlooksBlockedOrEmpty()heuristic inpackages/connectors/src/fetchers.tstreats as a bot wall → each article escalated to Scrapfly (30 credits each; 120 credits burnt in the first dry run). The feed is commented out in the YAML until that heuristic only fires on short pages.
Access
www.equinix.com is behind Akamai: the bot UA gets 403, the browser identity (L2, still direct HTTP, 0 credits) is served in full. fetch.level: 1, maxLevel: 4 — L2 is enough for every IBX page tested; Scrapfly is never reached. maxCreditsPerRun: 60. robots.txt: Allow: /, Disallow: /content/dam/eqxcorp/* (not crawled).
Fields (method)
code← JS constantconst title = "DC2"in the map script (js-var:title);name←h1#hero-banner-heading("Washington DC DC2").address,city,postalCode,countryIso2←const address1/address2/city/postalCode/country(country name → ISO-2 viacountryFromText).regionName← US state in the meta description ("…, Ashburn, VA.") — US only.lat/lng←const latitude/longitude(unicode-escaped, decoded) →geo.precision = exact(operator marker).certifications← "Certified to global standards" list (HECVAT, HIPAA, ISO 22301/27001/9001, NIST 800-53/FISMA High, PCI DSS, SOC 1/2 Type II …).renewableClaim← the REC/renewable bullet of the "Sustainability" spec row.facilityType←const ibxType(IBX→ colocation,xScale→ hyperscale).status← "coming soon / under construction" only when stated in the hero; default operational.description← meta description + "Colocation space: 11,004 m² (118,446 ft²). Power redundancy: N+1. UPS redundancy: N+1." Colocation (white) space is not stored asbuildingSqm(it is not the building footprint).- Not published per IBX: MW capacity, PUE, rack count → left null (nothing invented).
- Key
equinix:<CODE>;externalIds.equinix_ibx.
Verification (2026-09-11)
- Discovery: 398 URLs →
facility_pages=265,index=133(sitemap-core has 403/data-centers/URLs: 276 IBX-shaped, of which 265 pass classify; the rest are metro/country/region pages). --urlDC2:Washington DC DC2, 21715 Filigree Court, Ashburn, VA 20147, US, geo 39.01679/-77.46054, 9 certifications, renewable claim "2025: Wind RECs from Texas and Oklahoma vPPAs…" — matches the live page.--urlFR5:Frankfurt FR5, Kleyerstrasse 90, 60326 Frankfurt, DE, geo 50.09842/8.63239.- Sweep of 8 spread IBX pages (AT1, NY2, DC12, TR6, FR4, AM11, LD3, HK2): 8/8 valid, 0 rejected, all with address + coordinates. Credits: 0 (L2).
Gaps / TODO
- Newsroom off (see above) — re-enable the RSS line once the fetcher heuristic is fixed.
regionNameonly for US sites; MW never published.