{"source":"artskart","operation":"find_observations","description":"Search verified species observation records. Signature: find_observations(taxon_id: integer, optional, default None; county: string, optional, default None; municipality: string, optional, default None; status: string, optional, default None; from_date: string, optional, default None; to_date: string, optional, default None; lat: decimal number, decimal degrees (WGS84), optional, default None; lon: decimal number, decimal degrees (WGS84), optional, default None; radius_km: decimal number, kilometres, optional, default None; only_image_obs: yes/no, optional, default False; page: integer, optional, default 0; page_size: integer, optional, default 20; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0).","signature":"find_observations(taxon_id: integer, optional, default None; county: string, optional, default None; municipality: string, optional, default None; status: string, optional, default None; from_date: string, optional, default None; to_date: string, optional, default None; lat: decimal number, decimal degrees (WGS84), optional, default None; lon: decimal number, decimal degrees (WGS84), optional, default None; radius_km: decimal number, kilometres, optional, default None; only_image_obs: yes/no, optional, default False; page: integer, optional, default 0; page_size: integer, optional, default 20; limit: integer, items, optional, default 25; offset: integer, items, optional, default 0)","parameters":[{"name":"taxon_id","type":"integer","schema":{"anyOf":[{"type":"integer"},{"type":"null"}]},"required":false,"default":null,"description":"Restrict to one species/taxon, from search_species.","unit":null},{"name":"county","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Two-digit numeric fylkesnummer, e.g. \"50\" for Tr\u00f8ndelag. Pass the code, not a county name such as \"Tr\u00f8ndelag\". Validated against the current 15 fylke; an unknown code errors rather than returning unrelated data.","unit":null},{"name":"municipality","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Kommunenummer, e.g. \"5035\" for Stj\u00f8rdal. Must be a current (post-2024) 4-digit kommunenummer; a stale/unknown code silently returns nothing useful.","unit":null},{"name":"status","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"Redlist/alien-species status code, e.g. \"cr\", \"en\", \"hi\" (codes from list_reference_codes(\"status\")).","unit":null},{"name":"from_date","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"ISO date (YYYY-MM-DD), inclusive range.","unit":null},{"name":"to_date","type":"string","schema":{"anyOf":[{"type":"string"},{"type":"null"}]},"required":false,"default":null,"description":"ISO date (YYYY-MM-DD), inclusive range.","unit":null},{"name":"lat","type":"number","schema":{"anyOf":[{"type":"number"},{"type":"null"}]},"required":false,"default":null,"description":"WGS84 point and radius for a \"near here\" search; supply all three together. Each result gains a distance_km field and the list is sorted nearest first. The public API ignores geometry filters, so this is applied client-side over up to ~1000 fetched records; combine with taxon_id and/or county for complete coverage. Ignores page (returns the nearest page_size). Unit: decimal degrees (WGS84).","unit":"decimal degrees (WGS84)"},{"name":"lon","type":"number","schema":{"anyOf":[{"type":"number"},{"type":"null"}]},"required":false,"default":null,"description":"WGS84 point and radius for a \"near here\" search; supply all three together. Each result gains a distance_km field and the list is sorted nearest first. The public API ignores geometry filters, so this is applied client-side over up to ~1000 fetched records; combine with taxon_id and/or county for complete coverage. Ignores page (returns the nearest page_size). Unit: decimal degrees (WGS84).","unit":"decimal degrees (WGS84)"},{"name":"radius_km","type":"number","schema":{"anyOf":[{"type":"number"},{"type":"null"}]},"required":false,"default":null,"description":"WGS84 point and radius for a \"near here\" search; supply all three together. Each result gains a distance_km field and the list is sorted nearest first. The public API ignores geometry filters, so this is applied client-side over up to ~1000 fetched records; combine with taxon_id and/or county for complete coverage. Ignores page (returns the nearest page_size). Unit: kilometres.","unit":"kilometres"},{"name":"only_image_obs","type":"boolean","schema":{"type":"boolean"},"required":false,"default":false,"description":"Only return observations that have a photo.","unit":null},{"name":"page","type":"integer","schema":{"type":"integer"},"required":false,"default":0,"description":"Pagination, default page 0, 20 per page.","unit":null},{"name":"page_size","type":"integer","schema":{"type":"integer"},"required":false,"default":20,"description":"Pagination, default page 0, 20 per page.","unit":null},{"name":"limit","type":"integer","schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"display_type":"integer","required":false,"default":25,"description":"Maximum list items returned by the gateway (default 25, maximum 100).","unit":"items"},{"name":"offset","type":"integer","schema":{"type":"integer","minimum":0,"default":0},"display_type":"integer","required":false,"default":0,"description":"Number of list items to skip before returning the page.","unit":"items"}],"json_get_url_template":"https://allemannsdata.com/wiki/api/v1/kilder/artskart/find_observations?taxon_id={taxon_id}&county={county}&municipality={municipality}&status={status}&from_date={from_date}&to_date={to_date}&lat={lat}&lon={lon}&radius_km={radius_km}&only_image_obs=false&page=0&page_size=20&limit=25&offset=0","schema_scope":"#/data in the successful operation envelope","response_schema":{"type":"object","properties":{"total_count":{"type":["integer","null"]},"page_index":{"type":["integer","null"]},"page_size":{"type":["integer","null"]},"total_pages":{"type":["integer","null"]},"center":{"type":"object","properties":{"lat":{"type":"number"},"lon":{"type":"number"},"radius_km":{"type":"number"}},"additionalProperties":false,"required":["lat","lon","radius_km"]},"observations":{"type":"array","items":{"type":"object","properties":{"name":{"type":["string","null"]},"scientific_name":{"type":["string","null"]},"taxon_id":{"type":["integer","null"]},"count":{"type":["string","null"]},"sex":{"type":["string","null"]},"collected_date":{"type":["string","null"],"format":"date"},"collector":{"type":["string","null"]},"status":{"type":["string","null"]},"county":{"type":["string","null"]},"municipality":{"type":["string","null"]},"locality":{"type":["string","null"]},"latitude":{"type":["number","null"]},"longitude":{"type":["number","null"]},"precision_m":{"type":["string","number","null"]},"basis_of_record":{"type":["string","null"]},"institution":{"type":["string","null"]},"obs_url":{"type":["string","null"],"format":"uri"},"image_urls":{"type":"array","items":{"type":"string"}},"distance_km":{"type":["number","null"]}},"additionalProperties":false}},"note":{"type":["string","null"]}},"additionalProperties":false,"required":["total_count","observations"]},"response_schema_status":{"status":"declared","codegen_safe":true,"description":"Maintained response contract."},"entity_projection":{"status":"projected","entity_types":["species","place"],"description":"Recognized records and stable operation identifiers are projected; an empty array means the successful payload contained no recognizable entity."},"error_contract":{"scope":"top-level HTTP error response; never part of a success payload","schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"retryable":{"type":"boolean"},"details":{"type":"object"}},"additionalProperties":false,"required":["code","message","retryable"]},"suggestion":{"type":"string"},"_meta":{"type":"object","properties":{"retrieved_at":{"type":"string","format":"date-time"},"language":{"type":"string","const":"en"},"content_languages":{"type":"array","items":{"type":"string"}},"sources":{"type":"array","items":{"type":"object"}}},"required":["retrieved_at","language","content_languages","sources"]},"_links":{"type":"object","properties":{"self":{"type":"string","format":"uri"},"api_index":{"type":"string","format":"uri"},"feedback":{"type":"string","format":"uri"}},"required":["self","api_index","feedback"],"additionalProperties":false}},"additionalProperties":false,"required":["error","suggestion","_meta","_links"]},"statuses":{"400":{"codes":["MISSING_PARAMETER","INVALID_PARAMETER","INVALID_REQUEST"],"retryable":false},"404":{"codes":["SOURCE_NOT_FOUND","OPERATION_NOT_FOUND","ENTITY_NOT_FOUND"],"retryable":false},"429":{"codes":["RATE_LIMITED","GATEWAY_RATE_LIMITED"],"retryable":true},"502":{"codes":["SOURCE_UNAVAILABLE"],"retryable":true},"500":{"codes":["INTERNAL_ERROR"],"retryable":true}}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/artskart/find_observations/schema","operation":"https://allemannsdata.com/wiki/api/v1/kilder/artskart/find_observations","source":"https://allemannsdata.com/wiki/api/v1/kilder/artskart","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"},"output_fields":["total_count","page_index","page_size","total_pages","center","center.lat","center.lon","center.radius_km","observations","observations[].name","observations[].scientific_name","observations[].taxon_id","observations[].count","observations[].sex","observations[].collected_date","observations[].collector","observations[].status","observations[].county","observations[].municipality","observations[].locality","observations[].latitude","observations[].longitude","observations[].precision_m","observations[].basis_of_record","observations[].institution","observations[].obs_url","observations[].image_urls","observations[].distance_km","note"],"output_fields_truncated":false,"canonical_field_aliases":{"latitude":["center.lat","observations[].latitude"],"longitude":["center.lon","observations[].longitude"],"name":["observations[].name"]},"response_example":{"source":"artskart","operation":"find_observations","parameters":{"taxon_id":1,"county":"example value","municipality":"example value","status":"example value","from_date":"2026-01-15","to_date":"2026-01-15","lat":59.91,"lon":10.75,"radius_km":1.0,"only_image_obs":false,"page":0,"page_size":20},"data":{"total_count":1,"page_index":1,"page_size":1,"total_pages":1,"center":{"lat":59.91,"lon":10.75,"radius_km":1.0},"observations":[{"name":"Example","scientific_name":"Example","taxon_id":1,"count":"example value","sex":"example value","collected_date":"2026-01-15","collector":"example value","status":"example value","county":"example value","municipality":"example value","locality":"example value","latitude":59.91,"longitude":10.75,"precision_m":"example value","basis_of_record":"example value","institution":"example value","obs_url":"https://example.invalid/resource","image_urls":["https://example.invalid/resource"],"distance_km":1.0}],"note":"example value"},"entities":[{"type":"place","id":"59.91,10.75","name":"59.91, 10.75","source":"artskart","description":"Coordinate used as the operation input.","coordinates":{"lat":59.91,"lon":10.75,"crs":"WGS84"}}],"_meta":{"retrieved_at":"2026-01-15T12:00:00Z","language":"en","content_languages":["en"],"sources":[{"id":"artskart","name":"Artskart species data","description":"Norwegian taxonomy and verified species observations from the national Artskart service.","cache_ttl_seconds":300,"documentation":"https://artskart.artsdatabanken.no/"}]},"_provenance":{"data":{"source":"artskart","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/artskart"},"entities":{"source":"artskart","source_api":"https://allemannsdata.com/wiki/api/v1/kilder/artskart","derived_from":"#/data","description":"Normalized projection of data."}},"_links":{"self":"https://allemannsdata.com/wiki/api/v1/kilder/artskart/find_observations","source":"https://allemannsdata.com/wiki/api/v1/kilder/artskart","wiki":"https://allemannsdata.com/wiki/kilder/artskart/find_observations/","feedback":"https://allemannsdata.com/wiki/api/v1/feedback"}}}
