A valid request URL is required to generate request examples{
"entity": {
"id": "le-solya",
"country": "FR",
"currentVersion": 1
},
"current": {
"legalEntityId": "le-solya",
"version": 1,
"effectiveFrom": "2026-02-01T09:00:00.000Z",
"fingerprint": "9f2c1a5b7e0d4c3f8a6b2e1d9c0f7a4b5e3d2c1f0a9b8c7d6e5f4a3b2c1d0e9f",
"identity": {
"legalName": "Solya Retail",
"legalForm": "SAS",
"registrationNumber": "732829320",
"vatNumber": "FR44732829320",
"shareCapitalCents": 1000000,
"registryLabel": "RCS Paris 732 829 320",
"address": {
"lines": [
"12 rue de Rivoli"
],
"postalCode": "75001",
"city": "Paris",
"country": "FR"
},
"statutoryMentions": [
"TVA non applicable, art. 293 B du CGI"
]
}
},
"versions": [
{
"legalEntityId": "le-solya",
"version": 1,
"effectiveFrom": "2026-02-01T09:00:00.000Z",
"fingerprint": "9f2c1a5b7e0d4c3f8a6b2e1d9c0f7a4b5e3d2c1f0a9b8c7d6e5f4a3b2c1d0e9f",
"identity": {
"legalName": "Solya Retail",
"legalForm": "SAS",
"registrationNumber": "732829320",
"vatNumber": "FR44732829320",
"shareCapitalCents": 1000000,
"registryLabel": "RCS Paris 732 829 320",
"address": {
"lines": [
"12 rue de Rivoli"
],
"postalCode": "75001",
"city": "Paris",
"country": "FR"
},
"statutoryMentions": [
"TVA non applicable, art. 293 B du CGI"
]
}
}
],
"gaps": [],
"establishments": [
{
"storeId": "store-rivoli",
"legalEntityId": "le-solya",
"establishmentNumber": "00074"
}
]
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}Get a company with its identity history
Resolves one société: the entity, the identity version in force, the WHOLE append-only identity chain (versions, ascending — editing the identity APPENDS a version and never rewrites one, so a past receipt keeps the header it was issued under), the stores trading under it (establishments), and gaps. gaps NAMES what is missing or malformed, never prose: placeholder-name, unsupported-country, registration-number-missing, registration-number-invalid, establishment-number-missing, establishment-number-invalid, vat-number-missing, vat-number-invalid, address-missing, legal-form-missing, identity-not-yet-effective. Reach for it before an identity edit: the write replaces the identity WHOLESALE, so read current.identity, change your field, and send the whole object back. 404s when no société carries the id.
A valid request URL is required to generate request examples{
"entity": {
"id": "le-solya",
"country": "FR",
"currentVersion": 1
},
"current": {
"legalEntityId": "le-solya",
"version": 1,
"effectiveFrom": "2026-02-01T09:00:00.000Z",
"fingerprint": "9f2c1a5b7e0d4c3f8a6b2e1d9c0f7a4b5e3d2c1f0a9b8c7d6e5f4a3b2c1d0e9f",
"identity": {
"legalName": "Solya Retail",
"legalForm": "SAS",
"registrationNumber": "732829320",
"vatNumber": "FR44732829320",
"shareCapitalCents": 1000000,
"registryLabel": "RCS Paris 732 829 320",
"address": {
"lines": [
"12 rue de Rivoli"
],
"postalCode": "75001",
"city": "Paris",
"country": "FR"
},
"statutoryMentions": [
"TVA non applicable, art. 293 B du CGI"
]
}
},
"versions": [
{
"legalEntityId": "le-solya",
"version": 1,
"effectiveFrom": "2026-02-01T09:00:00.000Z",
"fingerprint": "9f2c1a5b7e0d4c3f8a6b2e1d9c0f7a4b5e3d2c1f0a9b8c7d6e5f4a3b2c1d0e9f",
"identity": {
"legalName": "Solya Retail",
"legalForm": "SAS",
"registrationNumber": "732829320",
"vatNumber": "FR44732829320",
"shareCapitalCents": 1000000,
"registryLabel": "RCS Paris 732 829 320",
"address": {
"lines": [
"12 rue de Rivoli"
],
"postalCode": "75001",
"city": "Paris",
"country": "FR"
},
"statutoryMentions": [
"TVA non applicable, art. 293 B du CGI"
]
}
}
],
"gaps": [],
"establishments": [
{
"storeId": "store-rivoli",
"legalEntityId": "le-solya",
"establishmentNumber": "00074"
}
]
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123,
"fieldErrors": [
{
"field": "<string>",
"message": "<string>"
}
]
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}{
"error": {
"code": "VALIDATION_FAILED",
"message": "<string>",
"statusCode": 123
}
}Authorizations
Authorization: Bearer <token>. Accepts EITHER a Keycloak access token (scopes-in-token) OR an opaque POS session token; both resolve to the same pos.* scope vocabulary the route guards enforce.
Path Parameters
1Response
The société, its identity chain, its open gaps and its stores.

