Agentic Portal

French Company Check

compliance
Serving

Legal identity and risk check for a French company from SIRENE/RNE, BODACC and VIES: legal name, SIREN/SIRET, address, NAF code, state, officers, VAT number and dated insolvency notices, with flags and action_required for anything to review. POST /v1/company with siren, siret or q (company or director name). Pay per request in USDC; no account, no API key.

Endpoint
POST https://agent.pocket.network/v1/french-company-check-v1/v1/company
Price per call
$0.005 USD
Networks payable on
Base (eip155:8453), Tempo (eip155:4217)
Protocol
rest

Calling it

The first call returns 402 Payment Required with the terms. Sign for those terms and retry the same request with the payment attached.

Example request

A real, working call — the request the service card verifies against.

curl -X POST https://agent.pocket.network/v1/french-company-check-v1/v1/company \
  -H 'content-type: application/json' \
  -d '{"q":"INSEE","directors_limit":0}'
Example response

The response this call returned, captured 2026-09-29 01:37:51 UTC.

{
  "portal": {
    "provenance": "third-party-supplier",
    "serviceId": "french-company-check-v1",
    "schemaCheck": "unchecked"
  },
  "data": {
    "service": "french-company-check-v1",
    "version": "1.1.0",
    "query": {
      "q": "INSEE",
      "include_insolvency": true,
      "include_vat": true,
      "notices_limit": 3,
      "directors_limit": 0,
      "verbose": false
    },
    "status": "ambiguous",
    "company": {
      "siren": "120027016",
      "siret_headquarters": "12002701600563",
      "legal_name": "INSTITUT NATIONAL DE LA STATISTIQUE ET DES ETUDES ECONOMIQUES",
      "display_name": "INSTITUT NATIONAL DE LA STATISTIQUE ET DES ETUDES ECONOMIQUES (INSEE)",
      "trade_name": null,
      "acronym": "INSEE",
      "legal_form_code": "7120",
      "naf_code": "84.11Z",
      "naf_code_2025": "84.11Y",
      "activity_section": "O",
      "state": "active",
      "incorporated_on": "1983-03-01",
      "closed_on": null,
      "size_category": "ETI",
      "headcount_bracket": "52",
      "establishments": {
        "total": 57,
        "open": 32
      },
      "address": {
        "full": "IMMEUBLE WHITE 88 AVENUE VERDIER 92120 MONTROUGE",
        "postal_code": "92120",
        "city": "MONTROUGE",
        "insee_code": "92049",
        "department": "92",
        "latitude": "48.816302544",
        "longitude": "2.3084504789"
      },
      "directors": [],
      "directors_total": 0,
      "vat_number": "FR85120027016",
      "vat_number_computed": "FR85120027016",
      "vat_number_agrees": true,
      "is_association": false,
      "is_sole_trader": false,
      "registry_updated_at": "2026-09-28T08:35:17"
    },
    "vat": null,
    "insolvency": {
      "notice_count": 0,
      "notices_examined": 0,
      "adverse_count": 0,
      "adverse_recent_count": 0,
      "adverse_last_published_on": null,
      "latest_adverse": null,
      "by_family": {},
      "accounts_filed": null,
      "notices": []
    },
    "complete": false,
    "action_required": true,
    "flags": [
      "partial_check",
      "source_degraded:vies",
      "multiple_matches"
    ],
    "match_count": 113,
    "match_count_is_lower_bound": false,
    "other_matches": [
      {
        "siren": "338253230",
        "legal_name": "SODEXO ENTREPRISES"
      },
      {
        "siren": "775666266",
        "legal_name": "MUTUELLE DE L'INSEE"
      },
      {
        "siren": "310324694",
        "legal_name": "ASSOCIATION DU PERSONNEL DE L'INSEE (API)"
      }
    ],
    "sources": {
      "recherche_entreprises": "ok",
      "bodacc": "ok",
      "vies": "timeout"
    },
    "data_as_of": "2026-09-29T01:37:50+00:00"
  }
}

Try it

Make one real paid call from your own wallet — about $0.005 on Base (eip155:8453). The wallet signs; nothing here holds a key. You'll see exactly what the service answers.

No browser wallet found. Install MetaMask, Rabby, or Coinbase Wallet to try a call here.

Supported methods

Methods the registry lists for this service. The portal forwards any call as sent; the supplier decides what it answers, and a delivered answer is settled.

Methods French Company Check accepts, and whether each reads or writes.
MethodEffect
GET /read
GET /v1/capabilitiesread
GET /v1/healthread
GET /v1/openapi.jsonread
GET /v1/versionread
POST /v1/companyread

Schemas

Published by the service itself. The example above is generated from these.

Request schema
{
  "type": "object",
  "description": "The body of POST /v1/company. Give exactly one of siren, siret or q.",
  "properties": {
    "siren": {
      "type": "string",
      "description": "9-digit SIREN."
    },
    "siret": {
      "type": "string",
      "description": "14-digit SIRET."
    },
    "q": {
      "type": "string",
      "maxLength": 200,
      "description": "Company or director name."
    },
    "include_insolvency": {
      "type": "boolean",
      "description": "Include BODACC insolvency notices (default true)."
    },
    "include_vat": {
      "type": "boolean",
      "description": "Include the VIES VAT check (default true)."
    },
    "notices_limit": {
      "type": "integer",
      "minimum": 0,
      "maximum": 20,
      "description": "How many notices to return (default 3)."
    },
    "directors_limit": {
      "type": "integer",
      "minimum": 0,
      "maximum": 25,
      "description": "How many officers to return (default 3; 0 returns none)."
    },
    "verbose": {
      "type": "boolean",
      "description": "Adds officers' birth year and more detail (default false)."
    }
  }
}
Response schema
{
  "type": "object",
  "description": "For POST /v1/company, a JSON object with the same keys for every status (found, ambiguous, not_found, source_unavailable, error): company identity, officers, VAT, insolvency notices, flags, action_required, per-source status, complete and data_as_of. The service answers within a 9 s deadline; a slow source reports timeout rather than a 5xx."
}