Search apprenticeship offers (HAL+JSON result). re and uk are first put
into the form the API accepts (normalizeSearchParams: " nrw" → NRW,
bundesweit → Bundesweit). Rejects with an AusbildungValidationError, before
any request, when the parameters break a rule of validateSearchParams (e.g. a
blank filter, a key that is not a search parameter, an array). A 2xx answer that
is not the search envelope (searchResultProblem) is an AusbildungParseError.
Full details for one apprenticeship offer by its numeric id. Rejects with an AusbildungValidationError, before any request, for an id that is not digits only (offerIdProblem). The API answers a JSON array of offer records (one for one id), not the search envelope; a 2xx answer that is not such an array (detailsProblem) is an AusbildungParseError.