API Documentation (Developer Preview)

Developer preview of some schemas and endpoints. The final launch API will be presented at GA (15 May 2026).

Example endpoints
🔐 Authentication

All endpoints (except /ping) require authentication:

Method Details
JWT Token Pass Bearer token in Authorization header: Authorization: Bearer <token>

🔧 Utility Endpoints

GET /api/v1/ping No Auth Required

Health check endpoint. Returns a simple response to verify the API is running.

Response
"pong from interjust.ai"

📋 Metadata Endpoints

GET /api/v1/jurisdictions Auth Required

Returns a list of all available jurisdictions in the system.

Example Response (only two of the available jurisdictions)
[
  { "jurisdictionName": "FI_NAT", "documentCount": 92084 },
  { "jurisdictionName": "NO_NAT", "documentCount": 93993 }
]
GET /api/v1/documenttypes Auth Required

Returns a list of all document types available in the database.

Example Response (only three of the available types)
[
  { "documentType": "DK_BKI", "documentCount": 4965 },
  { "documentType": "SE_SFS", "documentCount": 76492 },
  { "documentType": "EU_REG", "documentCount": 159923 }
]

🔍 Search Endpoints

GET POST /api/v1/fastsearch Auth Required

Quick autocomplete/typeahead search. Returns up to 10 matching documents based on title. Ideal for search-as-you-type functionality.

Parameters
Parameter Type Description
SearchStr string required Search string (max 200 chars)
DocType string optional Filter by document type (max 50 chars)
Language string required Language filter (default: none)
Example Request (GET)
GET SearchStr=competition&Language=en&DocType=EU_DIR
Example Response (only two example hits)
[
  
    { "_id_document":1083054,
      "_title_short":"Directive (EU) 2019/1",
      "_title":"Directive (EU) 2019/1 of the European Parliament and of the Council of 11 December 2018 to empower the competition authorities of the Member States to be more effective enforcers and to ensure the proper functioning of the internal market (Text with EEA relevance.)",
      "_language":"en",
      "_type_document":"EU_DIR"},
    { "_id_document":854360,
      "_title_short":"Directive 1969/262/EEC",
      "_title":"Council Directive 69/262/EEC of 28 July 1969 on the granting of aid to shipbuilding aimed at correcting competition on the international market",
      "_language":"en",
      "_type_document":"EU_DIR"}
]                      
POST /api/v1/freetextsearch Auth Required

Full-text search without vector/semantic components. Supports simple and full Lucene query syntax, filtering, faceting, and highlighting. Powered by Azure AI Search.

Parameters
Parameter Type Description
searchText string required The search query text
top int optional Number of results (default: 50, max: 1000)
skip int optional Results to skip for pagination (default: 0)
searchMode string optional any (OR) or all (AND, default)
queryType string optional simple (default) or full (Lucene syntax)
searchFields string optional Comma-separated list of fields to search
select string optional Comma-separated list of fields to return
filter string optional OData filter expression
orderBy string optional Sort clause (e.g., search.score() desc)
highlightFields string optional Fields to highlight matches in
facets string optional Comma-separated fields to facet on
scoringProfile string optional Name of scoring profile to use
Example Request
POST /api/v1/freetextsearch
Content-Type: application/json
Authorization: Bearer <token>

{
  "searchText": "arbetsmiljö skyddsombud",
  "top": 20,
  "searchMode": "all",
  "filter": "DocType eq 'SE_SFS'",
  "highlightFields": "Content"
}
Example Response (only one hit)
{
  "searchText": "arbetsmiljö skyddsombud",
  "totalCount": 142,
  "count": 20,
  "skip": 0,
  "top": 20,
  "hasMore": true,
  "nextSkip": 20,
  "results": [
    {
      "DocId": "SE_SFS_1977_1160",
      "DocTitle": "Arbetsmiljölag (1977:1160)",
      "DocType": "SE_SFS",
      "search.score": 12.45
    }
  ]
}

📄 Document Endpoints

GET POST /api/v1/regulations Auth Required

Browse and filter regulations with pagination. Returns a paginated list of documents matching the specified criteria.

Parameters
Parameter Type Description
offset int optional Number of records to skip
paging int optional Number of records per page
year_from int optional Filter by start year
year_to int optional Filter by end year
type_document string optional Document type filter
lang string optional Language filter
jurisdiction_federal string optional Jurisdiction filter
sortOrder byte optional Sort order (0=default)
Example Request
GET /api/v1/regulations?year_from=2020&year_to=2024&type_document=SE_SFS&paging=20
GET POST /api/v1/document/{_id_document} Auth Required

Retrieves a complete document with full metadata and content by document ID. Returns structured JSON with all document fields.

Parameters
Parameter Type Description
_id_document int required Internal document ID (path param for GET, body for POST)
Example Requests
GET /api/v1/document/12345
POST /api/v1/document
Content-Type: application/json

{ "_id_document": 12345 }
GET /api/v1/doclist/{docType} Auth Required

Returns a list of all documents of a specific document type.

Parameters
Parameter Type Description
docType string required Document type code (e.g., "FI_FSF")
Example Request
GET /api/v1/doclist/FI_FSF

📄 Regulation list Endpoints

GET /api/v1/reglist/{registerId} Auth Required

Returns a list of all documents belonging to a specific regulation register. Only registers with read rights by the user can be returned.

Parameters
Parameter Type Description
registerId int required Register ID (path parameter)
Example Request
GET /api/v1/reglist/4253

Join the waitlist Back to Home

Questions? Contact api@interjust.ai