{"query":"Kystdatahuset","outcome":"results","mode":"source_discovery","results":[{"type":"data_source","id":"kystdatahuset","name":"Kystdatahuset","description":"Norwegian ports, quays, maritime locations and reported port connections from the Coastal Administration.","source":"kystdatahuset","_links":{"wiki":"https://allemannsdata.com/wiki/kilder/kystdatahuset/","api":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset"}}],"data_sources":[{"id":"kystdatahuset","name":"Kystdatahuset","description":"Norwegian ports, quays, maritime locations and reported port connections from the Coastal Administration.","topic":"hav-og-kyst","keywords":["havn","havner","kai","kaier","anl\u00f8p","kyst"],"operations":[{"name":"search_ports","description":"Search for a port, quay or other Kystdatahuset location. Signature: search_ports(query: string, required; limit: integer, items, optional, default 30; offset: integer, items, optional, default 0).","signature":"search_ports(query: string, required; limit: integer, items, optional, default 30; offset: integer, items, optional, default 0)","required_parameters":["query"],"optional_parameters":["limit"],"output_fields":["[].port_id","[].navn","[].kode","[].type","[].kommune","[].fylke","[].lat","[].lon"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["[].navn"],"identifier":["[].kode"],"latitude":["[].lat"],"longitude":["[].lon"]},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/search_ports?query={query}&limit=30&offset=0"},{"name":"get_port","description":"Fetch information about one port or maritime location. Signature: get_port(location_id: integer, required; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_port(location_id: integer, required; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","required_parameters":["location_id"],"optional_parameters":[],"output_fields":["port_id","navn","kode","type","kommune","fylke","lat","lon"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["navn"],"identifier":["kode"],"latitude":["lat"],"longitude":["lon"]},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_port?location_id={location_id}&limit=25&offset=0"},{"name":"find_ports_nearby","description":"Find ports, quays and maritime locations near a coordinate. Signature: find_ports_nearby(lat: decimal number, decimal degrees (WGS84), required; lon: decimal number, decimal degrees (WGS84), required; radius_km: decimal number, kilometres, optional, default 20; limit: integer, items, optional, default 30; offset: integer, items, optional, default 0).","signature":"find_ports_nearby(lat: decimal number, decimal degrees (WGS84), required; lon: decimal number, decimal degrees (WGS84), required; radius_km: decimal number, kilometres, optional, default 20; limit: integer, items, optional, default 30; offset: integer, items, optional, default 0)","required_parameters":["lat","lon"],"optional_parameters":["radius_km","limit"],"output_fields":["havner","havner[].port_id","havner[].navn","havner[].kode","havner[].type","havner[].kommune","havner[].fylke","havner[].lat","havner[].lon","havner[].avstand_km","radius_km"],"output_fields_truncated":false,"canonical_field_aliases":{"name":["havner[].navn"],"identifier":["havner[].kode"],"latitude":["havner[].lat"],"longitude":["havner[].lon"]},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/find_ports_nearby?lat={lat}&lon={lon}&radius_km=20&limit=30&offset=0"},{"name":"get_port_connections","description":"Fetch reported arrival and departure connections for a port. Signature: get_port_connections(location_id: integer, required; from_year: integer, calendar year, optional, default None; to_year: integer, calendar year, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_port_connections(location_id: integer, required; from_year: integer, calendar year, optional, default None; to_year: integer, calendar year, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","required_parameters":["location_id"],"optional_parameters":["from_year","to_year"],"output_fields":["[].oid","[].origin","[].did","[].destination"],"output_fields_truncated":false,"canonical_field_aliases":{},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_port_connections?location_id={location_id}&from_year={from_year}&to_year={to_year}&limit=25&offset=0"},{"name":"search_ships","description":"Search Kystverket's combined ship registry by free text (ship name, and\nidentifiers where indexed). Signature: search_ships(query: string, required; limit: integer, items, optional, default 20; offset: integer, items, optional, default 0).","signature":"search_ships(query: string, required; limit: integer, items, optional, default 20; offset: integer, items, optional, default 0)","required_parameters":["query"],"optional_parameters":["limit"],"output_fields":["count","returned","ships","ships[].shipname","ships[].vessel_id","ships[].imo","ships[].callsign","ships[].shiptype","ships[].flag","ships[].loa","ships[].breadth","ships[].gt","ships[].dwt","ships[].teu","ships[].yearofbuild","ships[].speedservice"],"output_fields_truncated":false,"canonical_field_aliases":{},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/search_ships?query={query}&limit=20&offset=0"},{"name":"get_ship","description":"Full record for one ship from Kystverket's combined registry, by MMSI or IMO. Signature: get_ship(vessel_id: integer, optional, default None; imo: integer, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_ship(vessel_id: integer, optional, default None; imo: integer, optional, default None; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","required_parameters":[],"optional_parameters":["vessel_id","imo"],"output_fields":["found","note","ship"],"output_fields_truncated":false,"canonical_field_aliases":{},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_ship?vessel_id={vessel_id}&imo={imo}&limit=25&offset=0"},{"name":"get_ship_voyages","description":"Voyages (port-call legs) reported to SafeSeaNet for one ship, newest first. Signature: get_ship_voyages(vessel_id: integer, required; start_date: string, required; end_date: string, required; limit: integer, items, optional, default 50; offset: integer, items, optional, default 0).","signature":"get_ship_voyages(vessel_id: integer, required; start_date: string, required; end_date: string, required; limit: integer, items, optional, default 50; offset: integer, items, optional, default 0)","required_parameters":["vessel_id","start_date","end_date"],"optional_parameters":["limit","offset"],"output_fields":["vessel_id","ship","ship.shipname","ship.shiptype","ship.gt","ship.length","ship.breadth","count","returned","offset","voyages","voyages[].origin","voyages[].destination","voyages[].etd","voyages[].eta","voyages[].direction","voyages[].hazmat","voyages[].draft","voyages[].cargo_gross","voyages[].cargo_net"],"output_fields_truncated":false,"canonical_field_aliases":{},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_ship_voyages?vessel_id={vessel_id}&start_date={start_date}&end_date={end_date}&limit=50&offset=0"},{"name":"get_port_calls","description":"Arrivals to, or departures from, one or more Norwegian ports (SafeSeaNet),\nfor a span of whole years, newest first. Signature: get_port_calls(location_ids: list of integer (comma-separated), required; from_year: integer, calendar year, required; to_year: integer, calendar year, optional, default None; direction: string, optional, default 'arrivals'; limit: integer, items, optional, default 50; offset: integer, items, optional, default 0).","signature":"get_port_calls(location_ids: list of integer (comma-separated), required; from_year: integer, calendar year, required; to_year: integer, calendar year, optional, default None; direction: string, optional, default 'arrivals'; limit: integer, items, optional, default 50; offset: integer, items, optional, default 0)","required_parameters":["location_ids","from_year"],"optional_parameters":["to_year","direction","limit","offset"],"output_fields":["direction","location_ids","from_year","to_year","count","returned","offset","calls","calls[].shipname","calls[].vessel_id","calls[].imo","calls[].callsign","calls[].shiptype","calls[].gt","calls[].length","calls[].eta","calls[].etd","calls[].from_id","calls[].from_name","calls[].from_code","calls[].from_country","calls[].to_id","calls[].to_name","calls[].to_code","calls[].to_country","calls[].hazmat","calls[].draft","calls[].cargo_gross","calls[].cargo_net"],"output_fields_truncated":false,"canonical_field_aliases":{},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_port_calls?location_ids={location_ids}&from_year={from_year}&to_year={to_year}&direction=arrivals&limit=50&offset=0"},{"name":"get_ais_positions","description":"Historical AIS positions for one ship on a single UTC day, from Kystverket's\nAIS archive. Signature: get_ais_positions(vessel_id: integer, required; date: string, required; max_points: integer, optional, default 500; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"get_ais_positions(vessel_id: integer, required; date: string, required; max_points: integer, optional, default 500; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","required_parameters":["vessel_id","date"],"optional_parameters":["max_points"],"output_fields":["vessel_id","date","count","returned","downsampled","positions","positions[].time","positions[].lat","positions[].lon","positions[].sog","positions[].cog","positions[].heading","positions[].nav_status"],"output_fields_truncated":false,"canonical_field_aliases":{"date":["date"],"timestamp":["positions[].time"],"latitude":["positions[].lat"],"longitude":["positions[].lon"],"name":["positions[].heading"]},"get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset/get_ais_positions?vessel_id={vessel_id}&date={date}&max_points=500&limit=25&offset=0"}],"_links":{"api":"https://allemannsdata.com/wiki/api/v1/kilder/kystdatahuset","wiki":"https://allemannsdata.com/wiki/kilder/kystdatahuset/"}}],"returned":1,"total_matched":1,"limit":{"value":5,"scope":"source matches; no upstream entity searches were needed"},"coverage":{},"not_searched":{"sources":["ais","anleggsregisteret","arkivverket","artskart","avinor","badetemp","banenor","brreg","data_norge","datanorge","doffin","elhub","entsoe","entur","eurostat","fhi","firmafakta","firms","fiskeridir","frost","geonorge","kjoretoy","klimagassutslipp","kulturarv","kystdatahuset","lovdata","luftkvalitet","marine","mattilsynet","n2yo","nasjonalbiblioteket","naturbase","nobil","norgesbank","nva","nve","nyheter","oljefond","poi_norge","politiloggen","postlister","rovbase","sodir","ssb","statnett","statsregnskapet","stillinger","stortinget","strompris","utdanning","vannforekomster","vegvesen","weather"],"reason":"The query matched a source id, name, or curated navigation synonym, so source discovery completed locally without waiting for upstream entity-search services."},"suggestion":"Open the source descriptor, choose an operation, and call it directly.","_meta":{"retrieved_at":"2026-09-21T02:44:10Z","language":"en","content_languages":["en"],"sources":[]},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/sok/alle?q=Kystdatahuset","wiki":"https://allemannsdata.com/wiki/sok/?q=Kystdatahuset","api_index":"https://allemannsdata.com/wiki/api/v1/"}}
