Socrata datasets are essentially a collection of rows. Each row can be uniquely designated by its “row identifier”, much like a driver’s license number or social security number identifies an individual. For those familiar with database concepts, they essentially act the same way as primary keys.
Row identifiers come in two flavors:
Depending on what dataset you're accessing, internal row identifiers may be simple integers, or alphanumeric strings. There's no difference between the two in how you use them.
To learn more about how to access internal row identifiers, read the System Fields documentation.
To use a row identifier to look up a row, simply append it to the resource endpoint for that dataset. For example, to look up row
row-pdxn~kakk.kfji from the Chicago Salaries Dataset dataset using its row identifier:
In contrast, the Chicago Crimes dataset is configured to use a publisher-specified identifier. To look up the earthquake with the
Setting a row identifier requires that you are either the owner of a dataset, or that you've been granted a role of Publisher or Administrator on a Socrata customer site. Basically, if you can't modify the dataset, you can't set a row identifier.
A publisher-specified row identifier can be established for any Socrata dataset. A common column to use as a row identifier is an ‘ID’ column with some kind of number or code that uniquely identifies that row of data. For example, the ‘Inspection ID’ column of Chicago’s Food Inspections dataset is a Publisher-specified row identifier.
See this helpful guide on how to set a row identifier in Socrata.