{"openapi":"3.1.0","info":{"title":"Rafmennt public information API","version":"1.1.0","description":"Anonymous, read-only access. Stable REST version: /api/v1. Existing /agent routes remain compatible aliases. Additive response fields may be introduced; breaking changes use a new major URL version. Before retiring a major version we will publish Deprecation and Sunset response headers with at least 90 days notice in /developers. No writes, credentials, registrations or CMS access."},"servers":[{"url":"https://www.rafmennt.is"}],"security":[],"externalDocs":{"url":"https://www.rafmennt.is/developers"},"x-permissions":{"access":"anonymous","operations":["search","list","read"],"writes":false},"paths":{"/feeds/{kind}.jsonl":{"get":{"operationId":"download_public_entities","summary":"Bulk download published Schema.org entities","parameters":[{"name":"kind","in":"path","required":true,"schema":{"type":"string","enum":["organization","page","article","event","course"]}}],"responses":{"200":{"description":"One Schema.org JSON object per line","content":{"application/x-jsonlines":{"schema":{"type":"string"}}}}}}},"/api/v1/search":{"get":{"operationId":"search_public_site","summary":"Search published public information","description":"An omitted or empty q returns an empty result list. Search uses keywords; prefer Icelandic topic words.","parameters":[{"name":"q","in":"query","description":"Search keywords","schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/agent/search":{"get":{"operationId":"search_public_site_legacy","summary":"Search published public information","description":"Compatible alias of /api/v1/search","parameters":[{"name":"q","in":"query","description":"Search keywords","schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/api/v1/courses":{"get":{"operationId":"find_courses","summary":"Find upcoming course groups","parameters":[{"name":"q","in":"query","description":"Topic or name, preferably in Icelandic","schema":{"type":"string","maxLength":200}},{"name":"location","in":"query","description":"Published location","schema":{"type":"string","maxLength":100}},{"name":"from","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"to","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/agent/courses":{"get":{"operationId":"find_courses_legacy","summary":"Find upcoming course groups","parameters":[{"name":"q","in":"query","description":"Topic or name, preferably in Icelandic","schema":{"type":"string","maxLength":200}},{"name":"location","in":"query","description":"Published location","schema":{"type":"string","maxLength":100}},{"name":"from","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"to","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"description":"Compatible alias of /api/v1/courses"}},"/api/v1/events":{"get":{"operationId":"list_upcoming_events","summary":"Find upcoming event occurrences","parameters":[{"name":"q","in":"query","description":"Topic or name, preferably in Icelandic","schema":{"type":"string","maxLength":200}},{"name":"location","in":"query","description":"Published location","schema":{"type":"string","maxLength":100}},{"name":"from","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"to","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/agent/events":{"get":{"operationId":"list_upcoming_events_legacy","summary":"Find upcoming event occurrences","parameters":[{"name":"q","in":"query","description":"Topic or name, preferably in Icelandic","schema":{"type":"string","maxLength":200}},{"name":"location","in":"query","description":"Published location","schema":{"type":"string","maxLength":100}},{"name":"from","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"to","in":"query","description":"Calendar date, YYYY-MM-DD","schema":{"type":"string","format":"date"}},{"name":"limit","in":"query","description":"Maximum results per page","schema":{"type":"integer","minimum":1,"maximum":40,"default":40}},{"name":"cursor","in":"query","description":"Opaque nextCursor from the preceding response; keep the same query filters","schema":{"type":"string","maxLength":4096}}],"responses":{"200":{"description":"One page of published public information","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}},"Link":{"description":"Next page URL with rel=\"next\", when available","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SessionPage"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"description":"Compatible alias of /api/v1/events"}},"/api/v1/page":{"get":{"operationId":"read_public_page","summary":"Read a published public page","parameters":[{"name":"path","in":"query","description":"Site-relative path from search; defaults to /","schema":{"type":"string","maxLength":1000}},{"name":"format","in":"query","schema":{"type":"string","enum":["markdown"]}}],"responses":{"200":{"description":"Page metadata or Markdown","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicPage"}},"text/markdown":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/agent/page":{"get":{"operationId":"read_public_page_legacy","summary":"Read a published public page","parameters":[{"name":"path","in":"query","description":"Site-relative path from search; defaults to /","schema":{"type":"string","maxLength":1000}},{"name":"format","in":"query","schema":{"type":"string","enum":["markdown"]}}],"responses":{"200":{"description":"Page metadata or Markdown","headers":{"RateLimit-Policy":{"description":"120 public API requests per 60 seconds per IP at each Cloudflare location","schema":{"type":"string"}},"API-Version":{"schema":{"type":"string","const":"1"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicPage"}},"text/markdown":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}},"500":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"description":"Compatible alias of /api/v1/page"}},"/ask":{"get":{"operationId":"ask_get","summary":"NLWeb list-mode search over GET","parameters":[{"name":"q","in":"query","description":"Search keywords","schema":{"type":"string","maxLength":200}},{"name":"streaming","in":"query","schema":{"type":"boolean"}}],"responses":{"200":{"description":"NLWeb answer, application-level failure, or SSE stream","content":{"application/json":{"schema":{"type":"object","required":["_meta"],"properties":{"_meta":{"type":"object"},"results":{"type":"array","items":{"type":"object"}},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}}},"text/event-stream":{"schema":{"type":"string"}}}},"400":{"description":"Malformed NLWeb query","content":{"application/json":{"schema":{"type":"object","required":["_meta","error"]}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}}}},"post":{"operationId":"ask","summary":"NLWeb 0.55 list-mode search","description":"Source-backed keyword retrieval. Set prefer.streaming for start, result, error and complete SSE events. No generated summaries or personal conversations.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["query"],"properties":{"query":{"type":"object","required":["text"],"properties":{"text":{"type":"string","minLength":1,"maxLength":200}}},"prefer":{"type":"object","properties":{"streaming":{"type":"boolean"},"mode":{"const":"list"},"response_format":{"const":"conversational_search"}}}}}}}},"responses":{"200":{"description":"NLWeb answer, application-level failure, or SSE stream","content":{"application/json":{"schema":{"type":"object","required":["_meta"],"properties":{"_meta":{"type":"object"},"results":{"type":"array","items":{"type":"object"}},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}}},"text/event-stream":{"schema":{"type":"string"}}}},"400":{"description":"Malformed NLWeb query","content":{"application/json":{"schema":{"type":"object","required":["_meta","error"]}}}},"429":{"description":"RFC 9457 problem with a stable code and recovery hint","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"description":"Wait this many seconds before retrying","schema":{"type":"integer","minimum":1}}}}}}}},"components":{"schemas":{"PublicPage":{"type":"object","required":["path","url","title","description","kind"],"properties":{"path":{"type":"string"},"url":{"type":"string","format":"uri"},"title":{"type":"string"},"description":{"type":"string"},"kind":{"type":"string","enum":["page","course","event","article"]}}},"PublicSessionPage":{"type":"object","required":["path","url","title","description","kind","sessions"],"properties":{"path":{"type":"string"},"url":{"type":"string","format":"uri"},"title":{"type":"string"},"description":{"type":"string"},"kind":{"type":"string","enum":["page","course","event","article"]},"sessions":{"type":"array","items":{"type":"object","description":"Published Schema.org CourseInstance or Event, including dates, location and available offers","properties":{"@type":{"type":"string","enum":["CourseInstance","Event"]},"startDate":{"type":"string"},"endDate":{"type":"string"},"location":{"type":"object"},"offers":{"type":["object","array"]}}}}}},"SearchPage":{"type":"object","required":["results","total","pageSize","nextCursor"],"properties":{"results":{"type":"array","maxItems":40,"items":{"$ref":"#/components/schemas/PublicPage"}},"total":{"type":"integer","minimum":0},"pageSize":{"type":"integer","minimum":1,"maximum":40},"nextCursor":{"type":["string","null"],"description":"Null on the last page"}}},"SessionPage":{"type":"object","required":["results","total","pageSize","nextCursor"],"properties":{"results":{"type":"array","maxItems":40,"items":{"$ref":"#/components/schemas/PublicSessionPage"}},"total":{"type":"integer","minimum":0},"pageSize":{"type":"integer","minimum":1,"maximum":40},"nextCursor":{"type":["string","null"],"description":"Null on the last page"}}},"Problem":{"type":"object","required":["type","title","status","detail","code","hint","instance"],"properties":{"type":{"type":"string","format":"uri-reference"},"title":{"type":"string"},"status":{"type":"integer","minimum":400,"maximum":599},"detail":{"type":"string"},"code":{"type":"string","description":"Stable machine-readable error code"},"hint":{"type":"string","description":"Suggested recovery action"},"instance":{"type":"string"}}}}}}