Generator · Spanish data
Spanish vehicle registration plate
Endpoint GET /v1/es/vehicle-registration
What it covers
Returns a realistic Spanish vehicle registration plate. `type` selects the kind: `standard` (default, current `NNNN LLL`, e.g. 1234 BCD), `motorcycle` (text-identical), or a service/special class — `military` (ET/FN/EA), `diplomatic` (CD), `guardia-civil` (PGC), `national-police` (CNP), `temporary` (P), `dealer` (V), `historic` (H), or `trailer` (R). `era` chooses the format: `current` (default), `legacy` (the pre-2000 provincial `L(L)-NNNN-LL`, e.g. M-1234-AB, still common), or `both` (drawn per call); it only affects standard/motorcycle. `province` forces the legacy provincial code (an unknown province is a 400). Spain issues no vanity plates and no plate carries a checksum. Use `format` to choose spaced or compact rendering (legacy plates always render hyphenated).
Parameters
| Parameter | Type | Description |
|---|---|---|
| count | integer1–1000 | Number of records to return, 1–1000 (your plan may lower this). Omitted returns a single record; set it for a batch. |
| edge | boolean | Restrict output to edge-case plates from the rare corners of the format. |
| era | "current" | "legacy" | "both" | Format era: current (post-2000 NNNN LLL), legacy (pre-2000 provincial L(L)-NNNN-LL), or both (drawn per call). Only affects standard/motorcycle. |
| extreme | boolean | Return a correct value wrapped in a hostile encoding (untrimmed whitespace, invisible/zero-width characters, BOM, or bidi/combining marks). Homoglyphs are excluded so the value stays machine-parseable; it still validates after normalisation. |
| format | "with-space" | "compact" | Plate rendering: with a space or compact. Default with-space. |
| invalid | boolean | Return a deliberately invalid value that fails validation, for testing rejection paths. |
| province | string | Force the legacy provincial code to a province (e.g. Madrid, Barcelona). Legacy/both eras, standard/motorcycle only. |
| seed | integer | Integer seed for reproducible output: the same seed always yields the same record. |
| type | "standard" | "motorcycle" | "military" | "diplomatic" | "guardia-civil" | "national-police" | "temporary" | "dealer" | "historic" | "trailer" | Plate kind: standard, motorcycle, military, diplomatic, guardia-civil, national-police, temporary, dealer, historic, or trailer. |
Response fields
| Field | Type | Description |
|---|---|---|
| value | string | The plate in the requested format, e.g. "1234 BCD" or "M-1234-AB". |
| type | "standard" | "motorcycle" | "military" | "diplomatic" | "guardia-civil" | "national-police" | "temporary" | "dealer" | "historic" | "trailer" | Which kind of plate this is. |
| era | "current" | "legacy" | Which era's format this plate follows: current (post-2000) or legacy (pre-2000). |
| province? | string | The province the legacy provincial code identifies (e.g. Madrid for M-1234-AB); present only on legacy plates with a real provincial head. |
Other generators for Spain
The same kind of identifier elsewhere
Try it