search

Search the National Library's catalog - books, newspapers, journals, photos, maps, music, manuscripts, radio/TV and more, both physical and digitized. Digitized text (OCR) is matched too by default, so a query can surface newspaper or book pages that mention a term even when it's not in the title.

Signature: search(q: string, required; media_type: string, optional, default None; language: string, optional, default None; county: string, optional, default None; year_from: integer, optional, default None; year_to: integer, optional, default None; digital_only: yes/no, optional, default False; sort: string, optional, default None; page: integer, optional, default 0; size: integer, optional, default 10; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)

Direct GET

For navigating agents: open the HTML page with parameters in the URL. The result is fetched and displayed without screenshots or form filling.

Open this validated HTML GET URL

https://allemannsdata.com/wiki/kilder/nasjonalbiblioteket/search/?q={q}&media_type={media_type}&language={language}&county={county}&year_from={year_from}&year_to={year_to}&digital_only=false&sort={sort}&page=0&size=10&limit=25&offset=0

Replace {q}, {media_type}, {language}, {county}, {year_from}, {year_to}, {digital_only}, {sort}, {page}, {size} with values. Remove unused optional parameters from the URL.

For software and dashboards: Read the operation descriptor. The JSON GET template is https://allemannsdata.com/wiki/api/v1/kilder/nasjonalbiblioteket/search?q={q}&media_type={media_type}&language={language}&county={county}&year_from={year_from}&year_to={year_to}&digital_only=false&sort={sort}&page=0&size=10&limit=25&offset=0. Open this exact request as JSON.

ParameterRequirementJSON typeDescription
qrequiredstringFree-text query. Supports field-restricted terms too, e.g. "subject:fiske year:1970" combined with free text.
media_typeoptionalunionRestrict to one type, e.g. aviser (newspapers), bøker (books), tidsskrift (journals), bilder (photos), musikk, kart (maps), film, plakater (posters), noter (sheet music), radio, fjernsyn. See get_aggregations(q="*", group_by="mediatype") for the full list with counts.
languageoptionalunionLanguage filter - values are inconsistent in the catalog (mixes codes like "nob" and labels like "Norsk bokmål"); check get_aggregations(q=q, group_by="languages") first if unsure.
countyoptionalunionNorwegian county name, e.g. "Troms", "Oslo".
year_fromoptionalunionRestrict to items published/issued in this year range (inclusive).
year_tooptionalunionRestrict to items published/issued in this year range (inclusive).
digital_onlyoptionalbooleanOnly items that have been digitized.
sortoptionalunionOne of date, title, otherid, firstDigitalContentTime, optionally suffixed ",desc" (default: relevance).
pageoptionalintegerZero-based page index.
sizeoptionalintegerResults per page, 1 to 100 (default 10).
limitoptionalintegerGateway page size; default 25, maximum 100.
offsetoptionalintegerNumber of list items to skip; default 0.
Generated JavaScript, Python and response structure

Use JSON when the user requests code, machine-readable data, value extraction or further computation. Use the HTML GET page to identify the correct source and verify parameters.

Example for generated JavaScript and Python

https://allemannsdata.com/wiki/api/v1/kilder/nasjonalbiblioteket/search?q={q}&media_type={media_type}&language={language}&county={county}&year_from={year_from}&year_to={year_to}&digital_only=false&sort={sort}&page=0&size=10&limit=25&offset=0

Replace URL placeholders and remove unused optional parameters.

JavaScript in a dashboard

const url = "https://allemannsdata.com/wiki/api/v1/kilder/nasjonalbiblioteket/search?q={q}&media_type={media_type}&language={language}&county={county}&year_from={year_from}&year_to={year_to}&digital_only=false&sort={sort}&page=0&size=10&limit=25&offset=0";
const response = await fetch(url);
if (!response.ok) {
  const failure = await response.json();
  throw new Error(`${failure.error.code}: ${failure.error.message} ${failure.suggestion}`);
}
const result = await response.json();
const data = result.data;

Python without additional packages

import json
from urllib.request import urlopen

url = "https://allemannsdata.com/wiki/api/v1/kilder/nasjonalbiblioteket/search?q={q}&media_type={media_type}&language={language}&county={county}&year_from={year_from}&year_to={year_to}&digital_only=false&sort={sort}&page=0&size=10&limit=25&offset=0"
with urlopen(url) as response:
    result = json.load(response)
data = result["data"]

Response structure

{
  "source": "nasjonalbiblioteket",
  "operation": "search",
  "parameters": {},
  "data": {},
  "entities": [],
  "_meta": {"retrieved_at": "...", "sources": [], "cache": {}},
  "_links": {"self": "...", "source": "...", "wiki": "...", "feedback": "..."}
}
Form for manual use

The form is a fallback for people and browser agents that cannot open the GET URL directly.

Type: string. Free-text query. Supports field-restricted terms too, e.g. "subject:fiske year:1970" combined with free text.
Type: string. Restrict to one type, e.g. aviser (newspapers), bøker (books), tidsskrift (journals), bilder (photos), musikk, kart (maps), film, plakater (posters), noter (sheet music), radio, fjernsyn. See get_aggregations(q="*", group_by="mediatype") for the full list with counts.
Type: string. Language filter - values are inconsistent in the catalog (mixes codes like "nob" and labels like "Norsk bokmål"); check get_aggregations(q=q, group_by="languages") first if unsure.
Type: string. Norwegian county name, e.g. "Troms", "Oslo".
Type: integer. Restrict to items published/issued in this year range (inclusive).
Type: integer. Restrict to items published/issued in this year range (inclusive).
Type: yes/no. Only items that have been digitized.
Type: string. One of date, title, otherid, firstDigitalContentTime, optionally suffixed ",desc" (default: relevance).
Type: integer. Zero-based page index.
Type: integer. Results per page, 1 to 100 (default 10).

Result

Source: National Library of Norway. Retrieved 2026-09-27T13:11:15Z in 0.244 seconds.

total:
485
page:
0
size:
10
items:

10 results

  1. id:
    77882072183eba3f93eae923bac8ac14
    urn:
    URN:NBN:no-nb_digitidsskrift_2025100783097_001
    title:
    Maskinregisteret (trykt utg.) : fagblad for verksted og industri. 2025 Vol. 53 Nr. 6
    creators:
    not reported by source
    year:
    2025
    publisher:
    Egmont Publishing
    media_types:

    1 results

    1. tidsskrift
    languages:

    1 results

    1. nob
    county:
    not reported by source
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    NB
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digitidsskrift_2025100783097_001_0001/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/77882072183eba3f93eae923bac8ac14
  2. id:
    2be7db13328a6597d530d9a13b5d9cbd
    urn:
    URN:NBN:no-nb_digavis_ostlendingen_null_null_20240926_124_112_1
    title:
    Østlendingen
    creators:
    not reported by source
    year:
    20240926
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_ostlendingen_null_null_20240926_124_112_1-1_001_hovedavis/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/2be7db13328a6597d530d9a13b5d9cbd
  3. id:
    83ac504dec447de3aca8858883ec4ef5
    urn:
    URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20180301_10_9_1
    title:
    Lokalavisa Trysil-Engerdal
    creators:
    not reported by source
    year:
    20180301
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20180301_10_9_1-1_001_null/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/83ac504dec447de3aca8858883ec4ef5
  4. id:
    d73d6ea2d796cf567cd0447355eb57e5
    urn:
    URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20200206_16_6_1
    title:
    Lokalavisa Trysil-Engerdal
    creators:
    not reported by source
    year:
    20200206
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20200206_16_6_1-1_001_hovedavis/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/d73d6ea2d796cf567cd0447355eb57e5
  5. id:
    109683c395752f3f946ec6b090b8f3ad
    urn:
    URN:NBN:no-nb_digavis_lokalsorosterdal_null_null_20130604_7_63_1
    title:
    Lokalavisa Sør-Østerdal
    creators:
    not reported by source
    year:
    20130604
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    NB
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalsorosterdal_null_null_20130604_7_63_1-1_001_null/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/109683c395752f3f946ec6b090b8f3ad
  6. id:
    3c7b63b5aed0a81940882796cfd21bfe
    urn:
    URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20230622_19_23_1
    title:
    Lokalavisa Trysil-Engerdal
    creators:
    not reported by source
    year:
    20230622
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20230622_19_23_1-1_001_hovedavis/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/3c7b63b5aed0a81940882796cfd21bfe
  7. id:
    ad946bb87b18d77c856350a525c2e59d
    urn:
    URN:NBN:no-nb_digavis_ostlendingen_null_null_20111214_111_290_1
    title:
    Østlendingen
    creators:
    not reported by source
    year:
    20111214
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_ostlendingen_null_null_20111214_111_290_1-1_001_null/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/ad946bb87b18d77c856350a525c2e59d
  8. id:
    0f3539eb2d40cd3c2d74636e699a8cbb
    urn:
    URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20221117_18_42_1
    title:
    Lokalavisa Trysil-Engerdal
    creators:
    not reported by source
    year:
    20221117
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalavisatrysilengerdal_null_null_20221117_18_42_1-1_001_hovedavis/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/0f3539eb2d40cd3c2d74636e699a8cbb
  9. id:
    f49568c01847513b561be5b1da8e1ed0
    urn:
    URN:NBN:no-nb_digavis_lokalsorosterdal_null_null_20111215_5_144_1
    title:
    Lokalavisa Sør-Østerdal (Trysil)
    creators:
    not reported by source
    year:
    20111215
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    NB
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_lokalsorosterdal_null_null_20111215_5_144_1-1_001_null/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/f49568c01847513b561be5b1da8e1ed0
  10. id:
    21e18c48608de397563979f7faf82ace
    urn:
    URN:NBN:no-nb_digavis_ostlendingen_null_null_20200218_120_41_1
    title:
    Østlendingen
    creators:
    not reported by source
    year:
    20200218
    publisher:
    not reported by source
    media_types:

    1 results

    1. aviser
    languages:

    1 results

    1. Norsk bokmål
    county:
    Innlandet
    digital:
    yes
    public_domain:
    no
    license:
    copyrighted
    viewability:
    NONE
    access_allowed_from:
    LIBRARY
    thumbnail:
    https://www.nb.no/services/image/resolver/URN:NBN:no-nb_digavis_ostlendingen_null_null_20200218_120_41_1-1_001_hovedavis/full/0,128/0/native.jpg
    viewer_url:
    https://www.nb.no/items/21e18c48608de397563979f7faf82ace
limit:
25
offset:
0
returned:
10
has_more_results:
yes
truncated:
yes
next_offset:
10
Will you use the result in generated code?

Open the same result as JSON

Is data missing or incorrect? Send feedback about this result.

Continue exploring

How an AI agent should use this page

Ground rule: Navigate with HTML GET links to keep explanations and relationships. Use the page's JSON alternative only when concrete values must be extracted, compared or computed.

How to use the search lookup

  1. Replace the placeholders in the HTML GET template; remove optional parameters you do not need.
  2. Check types, units, limits and ID formats in the parameter table.
  3. Follow linked results to canonical pages before combining sources.

Misreading to avoid: An empty list means "no results for this lookup". An error message or unavailable source does not mean the data does not exist.

Source-specific next step

Go to the source page for other operations. Use the JSON template only after the HTML result shows that the parameters and source are correct.