{"openapi":"3.1.0","info":{"title":"Route13 API","version":"1.0.0","description":"Read-only REST API for European company financial data. Two endpoints: a free, unmetered search and a 1-credit full-record unlock. Credits are shared with the web dashboard.","contact":{"name":"Route13","url":"https://route13.io/contact"}},"servers":[{"url":"https://route13.io/api/v1"}],"security":[{"bearerAuth":[]},{"apiKeyQuery":[]}],"paths":{"/companies":{"get":{"operationId":"searchCompanies","summary":"Search companies (free, unmetered)","description":"Paginated search over the company index. Returns identifiers, sector, employees and address — no financials. FREE: only rate limits apply (100 req/min per key, 1000 req/h per IP). Requires a paid (Starter) plan; the Free tier has no API access.","parameters":[{"name":"q","in":"query","schema":{"type":"string","maxLength":100},"description":"Substring match on company name."},{"name":"country","in":"query","schema":{"type":"string","pattern":"^[A-Za-z]{2}$"},"description":"ISO-2 country code, e.g. FR."},{"name":"sector","in":"query","schema":{"type":"string"},"description":"Sector code prefix (NAF, SIC, …)."},{"name":"sic","in":"query","schema":{"type":"string"},"description":"UK SIC code (matches primary or secondary)."},{"name":"industry","in":"query","schema":{"type":"string"},"description":"Derived industry bucket (GB)."},{"name":"min_revenue","in":"query","schema":{"type":"number"},"description":"Minimum revenue in EUR (any fiscal year on file)."},{"name":"max_revenue","in":"query","schema":{"type":"number"},"description":"Maximum revenue in EUR."},{"name":"min_ebitda","in":"query","schema":{"type":"number"},"description":"Minimum EBITDA in EUR."},{"name":"min_employees","in":"query","schema":{"type":"integer"},"description":"Minimum disclosed headcount."},{"name":"accounts_cat","in":"query","schema":{"type":"string","enum":["full","full_small","filed"]},"description":"GB accounts-disclosure bucket."},{"name":"size_band","in":"query","schema":{"type":"string","enum":["micro","small","medium","large"]},"description":"GB size band."},{"name":"exclude_junk","in":"query","schema":{"type":"string","enum":["1"]},"description":"Drop generic / non-classifying primary SIC codes."},{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},{"name":"per_page","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}}],"responses":{"200":{"description":"Search results.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CompanySummary"}},"meta":{"$ref":"#/components/schemas/SearchMeta"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"429":{"$ref":"#/components/responses/RateLimited"}}}},"/companies/{identifier}":{"get":{"operationId":"getCompany","summary":"Get full company record (1 credit, then free forever)","description":"Returns the full record for one company — all financial years, directors, UK PSC beneficial owners, and FR ESG (Egapro, IDCC). The first unlock charges 1 credit and permanently unlocks the company for your account; later calls (web or API) are free. Requires a paid (Starter) plan and that the company's country is in your plan.","parameters":[{"name":"identifier","in":"path","required":true,"schema":{"type":"string"},"description":"National identifier (SIREN for France, etc.). For DE/FI ids may contain spaces or dashes."},{"name":"country","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z]{2}$"},"description":"ISO-2 code. Required only when the same identifier exists in multiple countries."}],"responses":{"200":{"description":"Full company record.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/CompanyDetail"},"meta":{"$ref":"#/components/schemas/DetailMeta"}}}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"402":{"$ref":"#/components/responses/PaymentRequired"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/ServerError"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Authorization: Bearer r13_live_..."},"apiKeyQuery":{"type":"apiKey","in":"query","name":"api_key","description":"Less secure; testing only."}},"schemas":{"CompanySummary":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"identifier":{"type":"string"},"country":{"type":"string"},"name":{"type":"string"},"address":{"type":["string","null"]},"sector_code":{"type":["string","null"]},"sector_name":{"type":["string","null"]},"sector_derived":{"type":["string","null"]},"sic_codes":{"type":"array","items":{"type":"string"}},"size_band":{"type":["string","null"]},"employees":{"type":["integer","null"]},"vat_number":{"type":["string","null"]},"email_generic":{"type":["string","null"],"description":"Generic / function inbox only (info@, contact@). Never a personal email."}}},"Financial":{"type":"object","properties":{"fiscal_year":{"type":"string"},"revenue_eur":{"type":["number","null"]},"ebit_eur":{"type":["number","null"]},"ebitda_eur":{"type":["number","null"]},"ebitda_is_estimated":{"type":"boolean"},"net_result_eur":{"type":["number","null"]},"total_assets_eur":{"type":["number","null"]},"ratios":{"type":["object","null"],"additionalProperties":true,"description":"Pre-computed filed ratios (FR INPI: ~14 keys). Present only where the source publishes them."}}},"Director":{"type":"object","properties":{"type":{"type":"string","enum":["person","company"]},"last_name":{"type":["string","null"]},"first_names":{"type":["string","null"]},"birth_year":{"type":["integer","null"]},"role":{"type":["string","null"]}}},"CompanyDetail":{"allOf":[{"$ref":"#/components/schemas/CompanySummary"},{"type":"object","properties":{"financials":{"type":"array","items":{"$ref":"#/components/schemas/Financial"}},"directors":{"type":"array","items":{"$ref":"#/components/schemas/Director"}},"psc":{"type":"array","items":{"type":"object","additionalProperties":true},"description":"UK Persons with Significant Control (public beneficial owners)."},"esg":{"type":"object","properties":{"egapro":{"type":"array","items":{"type":"object","additionalProperties":true}},"idcc":{"type":"array","items":{"type":"string"}}}}}}]},"SearchMeta":{"type":"object","properties":{"has_more":{"type":"boolean"},"page":{"type":"integer"},"per_page":{"type":"integer"},"cost":{"type":"number","description":"Always 0 — search is free."},"credits_remaining":{"type":["number","null"]},"plan":{"type":"string"}}},"DetailMeta":{"type":"object","properties":{"cost":{"type":"number","description":"1 if newly unlocked, 0 if already owned or no premium data."},"credits_remaining":{"type":["number","null"]},"already_unlocked":{"type":"boolean"},"no_premium_data":{"type":"boolean"},"plan":{"type":"string"}}},"Error":{"type":"object","properties":{"error":{"type":"string"}}}},"responses":{"BadRequest":{"description":"Malformed parameter, or identifier ambiguous across countries.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Unauthorized":{"description":"Missing or invalid API key.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"PaymentRequired":{"description":"Insufficient credits — nothing was charged.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"Forbidden":{"description":"Plan not eligible (Free tier, or country outside your plan).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"NotFound":{"description":"No company matches the identifier.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"RateLimited":{"description":"Rate limit hit (100/min per key, 1000/h per IP). See Retry-After.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"ServerError":{"description":"Server error — please retry.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}