Katso myös:

Finnan avoin rajapinta (API documentation in Finnish)


29.1.2016 First version
5.2.2016 Added information regarding the handling of component parts
17.3.2016 Fixed erroneous prefix for image URLs in the description for field 'images'. 
22.6.2016 Updated Examples of Use
26.9.2016 Added support for CORS
17.1.2017 Added a mention of the Swagger specification and UI
17.1.2017 The API has new fields subjectsExtended and imagesExtended. See the Swagger UI for more information.
5.1.2017 Added a mention about the maximum number of results and hints for searching larger sets


The API provides a way to perform searches to the material provided by the organizations (Finnish libraries, archives and museums) participating in Finna.fi. For example the metadata of Fennica - the Finnish National Bibliography and Viola - the Finnish National Discography are included in the API. The Library Network Services unit of the National Library is responsible for the maintenance and development of the interface. Inquiries and feedback on the API:  finna-posti AT helsinki.fi

The queries are formatted in the following way:


By default the results are returned in JSON  format. JSONP format is used if the request includes a callback parameter:


CORS is also supported, and all origin URLs are allowed.

The API is not meant for handling large result sets (see the page parameter for more information).

Terms of Use

See API Terms of Use and Recommendations.

Primary Documentation in Swagger

The primary and up to date documentation is available in the Swagger UI.

The Swagger specification can be loaded from https://api.finna.fi/v1?swagger.


N.B. The documentation below is considered deprecated. While it is still valid, it does not include features added since June 2016. Please refer to the Swagger UI for up to date documentation.


Perform a search.

ParameterTypeDescriptionAllowed values
lookforStringSearch term 
facetArrayFacets to be returned

List of index fields (column Core Fields) that may be used in faceting (Facet Field = Yes).

  • Results for non-hierarchical facets (other than format, building, sector_str_mv, category_str_mv) consist of the first 30 values sorted by count in decreasing order. 
  • The result item consists of the following fields:
    • value: facet value that may be used in the filter-parameter.

    • translated: translated display string

    • count: number of records

    • isApplied: 1 if if the facet is in used in the filter-parameter of the query

    • href: (relative) link for toggling (AND) filtering using the facet on or off (depending on whether the facet is active in the filter-parameter of the current query). For other operators, see 'filter' -field.

    • children Children facet items. Defined only for hierarchical facets.

"facets": {
"format": [
"value": "0\/MusicalScore\/",
"translated": "Musical score",
"count": 96,
"isApplied": false,
"href": "?lookfor=notbok&amp;type=AllFields&amp;limit=2&amp;filter%5B%5D=building%3A%220%2FVaski%2F%22&amp;filter%5B%5D=format%3A%220%2FMusicalScore%2F%22"

List of facet value filters

  • facetFilter[]=<facet>:"<regular expression>"
  • Allows filtering the returned facet items using regular expressions targeted to the value-field of the facet.
  • Note: the filtered facet needs to be present among the list of returned facets (facet-parameter).
    • Only University of Jyväskylä main level among building building-facet
    • University of Jyväskylä building-facet root level values:
      • facetFilter[]=building:"0/JYU"
    • University of Jyväskylä building-facet values (all levels):
      • facetFilter[]=building:"\d/JYU"
    • Format-facet root level items:
      • facetFilter[]=format:"^0/"
    • e-books and CDs from format-facet:
      • facetFilter[]=format:"(1/Book/eBook/|1/Sound/CD)"
  • The result will include the matched facet items and their possible parent items.
    For example when filtering e-books (facetFilter[]=format:"1/Book/eBook/") from format-facet values, the result will include also the root-level item Book (0/Book):
"facets": {
    "format": [
            "value": "0\/Book\/",
            "translated": "Book",
            "count": 4893,
            "href": "?lookfor=sibelius&amp;type=AllFields&amp;filter%5B%5D=format%3A%220%2FBook%2F%22",
            "children": [
                    "value": "1\/Book\/eBook\/",
                    "translated": "e-book",
                    "count": 237,
                    "href": "?lookfor=sibelius&amp;type=AllFields&amp;filter%5B%5D=format%3A%221%2FBook%2FeBook%2F%22"
filterArraySearch filters
  • <facet>="<value>"
  • List of facet fields (column Core Fields) that may be used in filtering (Facet Field=Yes).
    • Examples:
      • format: Content type (book, image, physical object...)
      • building: Organization that provides the material
      • online_boolean: Online available material
      • usage_rights_str_mv: Usage rights code
      • search_daterange_mv: date range
  • To return possible field values for a facet field you can perform a query without a search term and filters. For example to list all values for the format-field:
    • https://api.finna.fi/v1/search?lookfor=&facet[]=format&prettyPrint=1&limit=0
  • AND-filtering is used by default. OR or NOT filtering can be used by prepending the field with '~' (OR) or '-' (NOT). 
    • No books: 
      • filter[]=-format:"0:/Book"
    • Books or CDs: 
      • filter[]=~format:"0/Book/"&filter[]=~format:"1/Sound/CD/"

See type-field for using non-facet fields in filtering.

typeStringSearch type
  • AllFields (basic search, default)
  • Title

  • Author

  • Subject

  • year

  • JournalTitle

  • CallNumber (shelf location for library material).

  • publisher

  • Series

  • toc (Table of Contents)

  • ISN (Journal ISN-number)

  • Classification
    • For example:
      • Classification="ykl+35.6"

List of index fields that are used in different search types (column Search).

A query may be targeted to a specific (non-facet) index field by including the field in the search term.
For example to target the query to the field publication_place_txt_mv


Note: put facet fields in the filter-parameter. For example:

?lookfor=format:0/Book/ (not supported)

?lookfor=&filter[]=format:0/Book/ (use this instead)

sortStringSearch result order
  • Relevance (relevance, default)
  • title
  • author
    • Main author is used when the record has multiple authors.
  • last_indexed desc (last indexed)
  • main_date_str desc (newest first)
  • main_date_str asc (oldest first)
  • callnumber (shelf location of library material)
    • When the record has multiple call numbers the first one is used in sorting.
pageNumberResult page1-n (default 1). N.B. The API returns a maximum of 100 000 records. E.g. with limit=20 maximum page=5000. If it's necessary to handle larger sets of records, it's possible to limit the set handled at once e.g. with the last_indexed field.
limitNumberNumber of results

0-100 (default 20). limit=0 is useful when you only need the number of results or the results of faceting.

lngStringLanguage version
  • fi (finnish, default)
  • sv (swedish)
  • en-gb (english)

    Language version only affects building and format facets and institutions record field.

fieldArrayRecord fields to be returned

See the list of supported record fields below. If not defined, the record fields marked with bold in the list are returned. If empty, no records are returned.

callbackStringJSONP callback-functionOptional, not in use by default.
prettyPrintNumberPretty printed JSON result0, 1 (default 0).

Similar records (mainly books) from different sources are combined (deduplicated) during the search and only the record with the highest priority is shown in the search results. Filter the results using building to restrict returned records to specific sources.

The record field of dedupIds of a deduplicated record contains the IDs of similar records, for eaxmple:

"resultCount": 42,
"records": [
"id": "fennica.1003041",
"title": "Puhdistus",
"dedupIds": [

The IDs can be used to return a specific version of a record (see Record action).

Faceting results are affected by all similar records that have been combined in the search results to a single (deduplicated) result. For example, the values of all similar records are shown in the building facet. If needed, use facetFilter-parameter to restrict returned facet results.

More information on the deduplication algorithm



Retrieve record fields.

ParameterTypeDescriptionSupported values
idString|ArrayRecord ID or IDs

id record field

  • For example jykdok.922403
fieldArrayRecord fields.

 See the list of supported record fields below. If not defined, the bolded record fields from the list are returned. If empty, no records are returned.

callbackStringJSONP callback-functionOptional, not in use by default.
prettyPrintNumberPretty printed JSON result0, 1 (default 0).

Supported Record Fields

The following record fields can be used in the field parameter.

Record field content is dependent on the quality of the metadata. Most record fields are not unified acrossa records and therefore, for example, author names may be presented in different ways. Fields may also contain untranslated content.

If a requested field is missing from the response, it is not defined for the record.



Access restrictions, if known.

"accessRestrictions": [
    "University of Turku local network, remote access with Univ. of Turku username",
    "Turun yliopiston verkossa, et\u00e4k\u00e4ytt\u00f6 TY:n tunnuksilla"

"accessRestrictions": [


"accessRestrictions": [


Alternative titles.

"alternativeTitles": [
    "Miehet mustissa",


  • main: main author
  • corporate: corporate author
  • secondary: other authors
"authors": {
    "main": "Bowie, David",
    "secondary": [
        "Spiders from Mars"
"authors": {
    "main": "Ozric Tentacles",
    "corporate": "Ozric Tentacles,"


"awards": [
    "Tieto-Finlandia-palkinto 2013."

Publication type, for example 'Monograph', 'MonographPart' (part of a monograph), 'Serial' (serial publication), 'SerialPart' (part of a serial publication) and 'Unknown'.

"bibliographicLevel": "Monograph"

Location (hierarchical). Includes the following fields:

  • value: location code, used in faceting
  • translated: translated display string
"buildings": [
        "value": "0\/TAIY\/",
        "translated": "Taideyliopisto"
        "value": "1\/TAIY\/tea\/",
        "translated": "Teatterikorkeakoulun kirjasto"
        "value": "2\/TAIY\/tea\/1\/",
        "translated": "Lainattavat"

Library material shelf locations.

"callNumbers": [

Number of child records. Requesting this information can increase the query time considerably.

"childRecordCount": 0

Library material classification codes.

"classifications": {
"udk": [
"ykl": [

ISBN-number (processed). See also isbns.

"cleanIsbn": "1402087179"

ISSN-number (processed). See also issns.

"cleanIssn": "0065-2164"

Collections. Used for example in museum material.

"collections": [
    "Riuttalan talonpoikaismuseo"

Issue number of container publication.

"containerIssue": "4"

Reference to container publication.

"containerReference": "s. 191-201"

Start page number in container publication.

"containerStartPage": "191"

Title of container publication.

"containerTitle": "Finland : an introduction"

Volume of container publication.

"containerVolume": "25"

Corporate author

"corporateAuthor": "Valtiontalouden tarkastusvirasto."

IDs of similar records from other sources.

"dedupIds": [

Dissertation note

"dissertationNote": "Pro gradu -ty\u00f6 : Tampereen yliopisto, historiatieteen laitos, yleinen historia."


"edition": "10. osin uud. laitos"
"edition": "Pidennetty versio"

Component parts that belong to the record. Used for example in sound recordings. Requesting this information can increase the query time considerably.

"embeddedComponentParts": [
        "id": "viola.305175",
        "title": "Juppihippipunkkari",
        "authors": [
            "Koistinen, Petteri, s\u00e4velt\u00e4j\u00e4",
            "Alanko, Ilkka, sanoittaja",
            "Nelj\u00e4 Ruusua, esitt\u00e4j\u00e4"
        "otherAuthors": [
            "Koistinen, Petteri, s\u00e4velt\u00e4j\u00e4",
            "Alanko, Ilkka, sanoittaja",
            "Nelj\u00e4 Ruusua, esitt\u00e4j\u00e4"
        "id": "viola.305176",



Events pertaining to the record, such as creation, use, discovery, design and exhibition. Used in museum material.

"events": {
    "valmistus": [
            "type": "valmistus",
            "date": "800 - 1050, viikinkiaika, rautakausi",
            "materials": [
    "n\u00e4yttely": [
            "type": "n\u00e4yttely",
            "name": "Raision museo -ja kulttuurikeskus Harkon arkeologinen n\u00e4yttely",
            "description": "26.5.2004 - 31.12.2006"

Record formats (hierarchical).

  • value: format code (used in faceting)
  • translated: translated display string

For example: e-book (1/Book/eBook/) is a child of Book (0/Book/). The whole format hierarchy is returned starting from the root level.

"formats": [
        "value": "0\/Book\/",
        "translated": "Kirja"
        "value": "1\/Book\/eBook\/",
        "translated": "E-kirja"
fullRecordStringOriginal metadata of the record (MARC, EAD, LIDO, DC, QDC).

General notes.

"generalNotes": [
    "Ainoastaan verkkolehden vuoden viimeinen numero ilmestyy painettuna.",
    "Ei ilmestynyt lainkaan painettuna 2005."

Genres. For thematic or stylistic information, see subjects.

"genres": [
    "Electronic books",
    "Conference proceedings"
"genres": [
"genres": [

Parent record ID. Used for example in archive (EAD) material.

"hierarchyParentId": [

Title of the parent record. Used for example in archive (EAD) material.

"hierarchyParentTitle": [
    "Aa Diaarit"
"hierarchyParentTitle": [
    "The rise and fall of Ziggy Stardust and the spiders from Mars"

Hierarchy top level record ID. Used for example in archive (EAD) material.

"hierarchyTopId": [

Hierarchy top level record title. Used for example in archive (EAD) material.

"hierarchyTopTitle": [
    "Viipurin provinssikanslian arkisto"

Publication dates in human readable format.

"humanReadablePublicationDates": [

Finna record identifier (unique).

"id": "alma.757000"



Record identifier (not unique).

In museum material, it contains an inventory number:

"identifierString": "201190a20"

In databases, an identifier string:

"identifierString": "FSD"

Terms of use for record images:

  • copyright: Copyright license in brief

  • link: Link to license

  • description: Optional description.

"imageRights": {
    "copyright": "CC BY 4.0",
    "link": "http:\/\/creativecommons.org\/licenses\/by\/4.0\/deed.fi",
        "description": [
            "Finna-palvelussa julkaistuja Helsingin kaupunginmuseon kuvia voi k\u00e4ytt\u00e4\u00e4 vapaasti, my\u00f6s kaupallisessa k\u00e4yt\u00f6ss\u00e4.
             Kuvaa ei saa muunnella ilman lupaa ja kuvan yhteydess\u00e4 on mainittava kuvaaja(jos tiedossa) ja Helsingin kaupunginmuseo.
             Finnassa n\u00e4ytett\u00e4v\u00e4t kuvat lisensoidaan Nime\u00e4 4.0 Kansainv\u00e4linen (CC BY 4.0) -lisenssill\u00e4.
             Palvelussa n\u00e4ytett\u00e4v\u00e4t kuvat eiv\u00e4t ole painolaatuisia. Jos tarvitset painolaatuisen kuvan tai sinulla on muuta kysytt\u00e4v\u00e4\u00e4,
             ota yhteytt\u00e4 Helsingin kaupunginmuseon kuva-arkistoon: http:\/\/www.helsinginkaupunginmuseo.fi\/kuva-arkisto"

Record image URLs.

"images": [

Prepend the URL with https://api.finna.fi when retrieving the image, for example:


For books the URL will return a transparent .gif-image (10x10 pixels) when no book cover is found.


Organization. See also buildings.

  • value: organization code
  • translated: translated display string
"institutions": [
        "value": "LUC",
        "translated": "Lapin korkeakoulukirjasto"

ISBN-numbers. See also cleanIsbn.

"isbns": [
    "951-0-31435-8 (sid.)",
    "978-951-0-31435-7 (sid.)"

Is the record a archive collection?

"isCollection": true

Is the record part of a archive series?

"isPartOfArchiveSeries": true

ISSN-numbers. See also cleanIssn.

"issns": [

Languages. See also originalLanguages.

"languages": [

Library of Congress Control Number

"lccn": "2010252176"


"manufacturer": "([Myllykoski] : Myllykosken kirjap.)"

Physical measurements.

"measurements": [
    "Pituus: 42 cm",
    "Leveys: helma 22 cm; rinta 34 cm; olka+hiha 14,5+32,5 cm",
    "Lis\u00e4mitta: Koko 110"

Authors without presenters. See also presenters.

  • name: name
  • role: role
"nonPresenterAuthors": [
        "name": "Doyle, Arthur Conan",
        "name": "Attwood, David",
        "role": "ohj."

URLs (library material).

  • url: URL
  • text: (untranslated) display string
  • source: record source (organization)
    • value: organization code
    • translated: translated display string
"onlineUrls": [
        "url": "http:\/\/eca.europa.eu\/portal\/page\/portal\/publications\/Journal",
        "text": "Elektroninen julkaisu (PDF)",
        "source": {
            "value": "selma",
            "translated": "Eduskunnan kirjasto - Selma"

OpenURL (library material).


Original languages. See also languages.

"originalLanguages": [

The record's relations to other records. Used in MARC records.

"otherLinks": [
        "heading": "Arvosteltu teos",
        "title": "Viimeiset runonlaulajat",
        "author": "Martti Haavio"

Physical description of the material.

"physicalDescriptions": [
    "0,01 hyllmeter",
    "1 arkivenheter"

Physical locations of archive material.

"physicalLocations": [
    "Historiska och litteraturhistoriska arkivet",
    "Helsingfors, Nationalbiblioteket"


Place of publication.

"placesOfPublication": [
    "New York, NY  :"

Playing times. Used for example in sound recordings.

"playingTimes": [

Presenters (see also nonPresenterAuthors).

  • presenters (Array)
    • name: name
    • role: role
  • details (Array): Details. Presenter names may also be included here (depending on the metadata).
"presenters": {
    "presenters": [
            "name": "Carola",
            "role": "esitt."
            "name": "Sarmanto, Heikki",
            "role": "esitt."
            "name": "Heikki Sarmanto Trio",
            "role": "esitt."
    "details": [
        "Carola (voc), Heikki Sarmanto Trio: Heikki Sarmanto (p), Tapani Tamminen (b), Reino Laine (dr), Esa Pethman (fl, ts)"

Production credits. Used for example in sound recordings.

"productionCredits": [
    "Miikka Huttunen (\u00e4\u00e4nitt\u00e4j\u00e4, miksaaja), Jukkis Uotila (tuottaja), Klaus Suonsaari (tuottaja), Svante Forsb\u00e4ck (masteroija)."

Estimated date of publication.

"projectedPublicationDate": "12\/2015"

Date of publication.

"publicationDates": [

Last date of publication. Used for example in periodicals and movies.

"publicationEndDate": "2003"

An actively published periodical may be indicated with the year 9999:

"publicationEndDate": "9999"

Publication frequency.

"publicationFrequency": [
    "Kerran kuukaudessa."

Publication info (may also include the place of publication).

"publicationInfo": [




"publishers": [
    "Published by E. & F.N. Spon for the Royal Institute of British Architects"
previousTitles / newerTitles Previous and newer titles. May also be included in the field recordLinks.

Rating by Finna users. Used in the following formats 0/Book/, 0/Journal/, 0/Sound/ and 0/Video/.

  • average: average, 0-5.

  • count: number of ratings

"rating": {
    "average": 2.5,
    "count": 3

All index data for the record, excluding fullRecord.


Links (relations) between records.

  • value
  • link
    • type: link (relation) type, for example title or ISSN-number
    • value: value of linked record
    • exclude
  • translated: translated display string of link type
"recordLinks": [
        "value": "Baskervillen koira",
        "link": {
            "type": "isn",
            "value": "978-951-1-22851-6",
            "exclude": "arto.1567282"
        "translated": "Muu suhde"
"recordLinks": [
        "value": "Julkisuuden salaisuudet : pakinoita ja satiireja journalismin ja julkisuuden kiehtovasta maailmasta",
        "link": {
            "type": "title",
            "value": "Julkisuuden salaisuudet : pakinoita ja satiireja journalismin ja julkisuuden kiehtovasta maailmasta"
        "translated": "Muu suhde"
recordPageStringRelative link to record page on Finna. Prepend the URL with https://www.finna.fi

Sector (library, museum or archive).

  • value: sector code
  • translated: translated display name
"sectors": [
        "value": "0/mus/",
        "translated": "Museo"

Series information.

  • name: name
  • additional
  • number: ordinal number in series
  • issn: ISSN-number
"series": [
        "name": "Ursan julkaisuja",
        "additional": "0357-7937;",
        "number": "28",
        "issn": "0357-7937"
"series": [
        "name": "Laatukirjasto"

SFX-object ID

"sfxObjectId": "1000000000310928"

Short title. See also title and subTitle.

"shortTitle": "Parhaat ruokasienet"


Source (organization)

  • value: organization code
  • translated: translated display string
"source": [
        "value": "keski",
        "translated": "Keski-kirjastot"


The array consists of a array of topics possibly followed by arrays of subtopics.

"subjects": [
        "Holmes, Sherlock,",

Subtitle. See also title ja shortTitle.

"subTitle": "sieniopas"


"summary": [
    "Provides essential ideas of the new science of nanotechnology and mathematics. Covers contemporary topics in the areas of the environment, food safety, medicine and healthcare, consumer goods, agriculture, homeland security, and energy supply."

Required equipment for consuming the material.

"systemDetails": [
    "Internet-yhteys; www-selain."

Title. See also shortTitle and subTitle.

"title": "Parhaat ruokasienet : sieniopas"

Section related to the title, if it is part of a series. See also series.

"titleSection": "3."

Additional information related to the title. May also contain information on authors.

"titleStatement": "directed by Ridley Scott ; screenplay by Hampton Fancher and  David Peoples"

Table of contents. May also contain other information.

"toc": [
    "1 CD-\u00e4\u00e4nilevy + esiteliite",
    "Kappale Midnight in a perfect world sis. selke\u00e4n s\u00e4mplen Pekka Pohjolan kappaleesta Sekoilu seestyy",
    "Best foot forward. Building steam with a grain of salt. The number song. Changeling. What does your soul look like (part 4). Stem\/Long stem. Mutual slump. Organ donor. Why hip hop sucks in '96. Midnight in a perfect world. Napalm brain\/Scatter brain. What does your soul look like (part 1 - Blue sky revisit)",
    "DJ Shadow",

Uniform title. Used in library material.

"uniformTitles": [
    "On the origin of species"

Archive material ID. See also id.

"unitId": "Aa:6"

Related external resources.

  • url: URL
  • desc: description (translated when possible)
"urls": [
        "url": "http:\/\/www.makupalat.fi\/",
        "desc": "Tietokannan k\u00e4ytt\u00f6liittym\u00e4"
        "url": "http:\/\/www.makupalat.fi\/fi-FI\/Info\/",
        "desc": "Tietokantaopas"

Year (for example year of publication, manufacture). Also used in main_date_str facet.

"year": "1761"

Example queries

Search for records using the search term "sibelius":
Search CDs using the search term "sibelius":
Search online images using the search term "sibelius"
Search online images using the search term "sibelius", faceted by organization
Search for records from years 1870-1890
Formats of all records
All online images
All records with the allowed use "Modifications allowed, also commercial use"
All organizations, names in swedish
Records with "sibelius" as author
Retrieve a single record by ID
Retrieve two records by ID

The search term may also include a more complex query, for example a target (non-facet) field or a logical operator. See also 'type' parameter of Search action.

Search using search terms "sibelius" and "festival"

Handling of Component Parts

Some MARC records found in Finna contain embedded component parts. These include articles in a journal and pieces of music in a music CD. In the Finna UI these are displayed in the Contents/Pieces tab of the record view for the host record, and the metadata used for this list is in host record's MARC field 979. In the API the 979 fields have been compacted to a single field, which contains a repeated subfield for each component part ID. Metadata for the component parts can be fetched as necessary with the record action of the API by using the record IDs found in the subfields a of field 979.

Here is an example record containing component parts: https://api.finna.fi/v1/record?id=viola.49914&field[]=fullRecord

Examples of Use

Additional Information

Finna search instuctions.

The API also supports Finna advanced search syntax using the same parameters as seen on the advanced search results page, for example:

  • No labels