Public Sector Wages by Detailed Socio-Occupational CategorySalaires dans la fonction publique par catégorie socioprofessionnelle détaillée
Salaires dans la fonction publique par catégorie socioprofessionnelle détailléePublic Sector Wages by Detailed Socio-Occupational Category
This API, published by INSEE (French national statistics institute), provides full-time-equivalent net wage data for employees of the public sector in France, excluding Mayotte. Figures are broken down by detailed occupation and cross-tabulated with variables such as sex, age, and sector. The dataset supports statistical analysis of pay levels and disparities within French public administration by demographic and occupational characteristics, at national level.the data is intended for researchers, policymakers, and analysts studying public employment and wage structures.wait this last sentence not supported, remove.Salaire net en équivalent temps plein dans la fonction public ventilé par profession et selon plusieurs variables (sexe, âge, secteur...), pour la France hors Mayotte.
Trust score
How is this computed?Weighted across five axes. Tap a ring for what it measures.
Data schema (13 fields)
Click a field to see example values.
| Field | Type | Description |
|---|---|---|
| GEOTerritory | string | Geographic area code identifying the territory covered.Geographic area code identifying the territory covered. |
| QUANTILE | string | Statistical quantile of the salary distribution, or total if '_T'.Statistical quantile of the salary distribution, or total if '_T'. |
| SEX | string | Sex category code (male, female, or total).Sex category code (male, female, or total). |
| CIVILSERVANT_STATUSCivilservant status | string | Civil servant employment status code, or total if '_T'.Civil servant employment status code, or total if '_T'. |
| FREQFrequency | string | Frequency of the observation, e.g. annual.Frequency of the observation, e.g. annual. |
| PUBLIC_LEGAL_FORMPublic legal form | string | Legal form of the public employer, or total if '_T'.Legal form of the public employer, or total if '_T'. |
| TIME_PERIODPeriod | string | Year the observation refers to.Year the observation refers to. |
| UNIT_MEASUREUnit | string | Code for the unit of measurement used for the value.Code for the unit of measurement used for the value. |
| WKTIME | string | Working time category code (e.g. full-time/part-time), or total.Working time category code (e.g. full-time/part-time), or total. |
| DERA_MEASUREDera measure | string | Code identifying the type of measure reported, such as average salary or staff count.Code identifying the type of measure reported, such as average salary or staff count. |
| PCS_ESEPcs ese | string | Detailed socio-professional category code (PCS-ESE classification).Detailed socio-professional category code (PCS-ESE classification). |
| AGE | string | Age group code, or total if '_T'.Age group code, or total if '_T'. |
| OBS_VALUE_NIVEAUValue | number | Numeric value of the observed measure.Numeric value of the observed measure. |
Schema captured from melodi 7 days ago.
Query the data
Pick columns and a sort, then fetch a live preview straight from the source. Choose an API-filterable column (marked ▾) under “Where” to pick from its list of values.
Sample data (5 records)
Record 1AGE: _T · GEO: 2025-FRANCE-F
{
"AGE": "_T",
"GEO": "2025-FRANCE-F",
"SEX": "F",
"FREQ": "A",
"WKTIME": "_T",
"PCS_ESE": "311D",
"QUANTILE": "_T",
"TIME_PERIOD": "2023",
"DERA_MEASURE": "SALAIRE_NET_EQTP_MENSUEL_MOYENNE",
"UNIT_MEASURE": "XDC",
"OBS_VALUE_NIVEAU": 2615.937,
"PUBLIC_LEGAL_FORM": "_T",
"CIVILSERVANT_STATUS": "_T"
}Record 2AGE: Y40T49 · GEO: 2025-FRANCE-F
{
"AGE": "Y40T49",
"GEO": "2025-FRANCE-F",
"SEX": "_T",
"FREQ": "A",
"WKTIME": "_T",
"PCS_ESE": "431F",
"QUANTILE": "_T",
"TIME_PERIOD": "2023",
"DERA_MEASURE": "EFFECTIFS_EQTP",
"UNIT_MEASURE": "FT",
"OBS_VALUE_NIVEAU": 58144.576,
"PUBLIC_LEGAL_FORM": "_T",
"CIVILSERVANT_STATUS": "_T"
}Record 3AGE: Y_UNK · GEO: 2025-FRANCE-F
{
"AGE": "Y_UNK",
"GEO": "2025-FRANCE-F",
"SEX": "_T",
"FREQ": "A",
"WKTIME": "_T",
"PCS_ESE": "432D",
"QUANTILE": "_T",
"TIME_PERIOD": "2023",
"DERA_MEASURE": "EFFECTIFS_EQTP",
"UNIT_MEASURE": "FT",
"OBS_VALUE_NIVEAU": 3250.596,
"PUBLIC_LEGAL_FORM": "_T",
"CIVILSERVANT_STATUS": "_T"
}Record 4AGE: Y40T49 · GEO: 2025-FRANCE-F
{
"AGE": "Y40T49",
"GEO": "2025-FRANCE-F",
"SEX": "M",
"FREQ": "A",
"WKTIME": "PT",
"PCS_ESE": "_T",
"QUANTILE": "_T",
"TIME_PERIOD": "2023",
"DERA_MEASURE": "SALAIRE_NET_EQTP_MENSUEL_MOYENNE",
"UNIT_MEASURE": "XDC",
"OBS_VALUE_NIVEAU": 2525.398,
"PUBLIC_LEGAL_FORM": "3",
"CIVILSERVANT_STATUS": "NT"
}Record 5AGE: Y_GE60 · GEO: 2025-FRANCE-F
{
"AGE": "Y_GE60",
"GEO": "2025-FRANCE-F",
"SEX": "_T",
"FREQ": "A",
"WKTIME": "_T",
"PCS_ESE": "_T",
"QUANTILE": "_T",
"TIME_PERIOD": "2023",
"DERA_MEASURE": "EFFECTIFS_EQTP",
"UNIT_MEASURE": "FT",
"OBS_VALUE_NIVEAU": 79483.379,
"PUBLIC_LEGAL_FORM": "_T",
"CIVILSERVANT_STATUS": "NT"
}Live sample captured at profiling time — values may have changed upstream.
Verification Status
Using the API
Configuration
- Base URL
- https://api.insee.fr/melodi/data/DS_DERA_PUBLIC_ANNUEL
Query examples
curl -s 'https://api.insee.fr/melodi/data/DS_DERA_PUBLIC_ANNUEL?maxResult=20' -H 'Accept: application/json'First 20 observations (dimensions + measures) as JSON.
Machine-readable & source
Embed this badge in a README or wiki — it always shows the latest verification state and quality tier.