v2.12 - 2026-10-22
Added
- Added optional
icebreaker_settings.strict_custom_instructions, defaultfalse. Whentrue,custom_instructionsreplace the Mantiks editorial template for the icebreaker message. Requiresuse_custom_instructions. Saving forcesinclude_hiring_question,include_closing_salutation, andrecruiter.enabletofalse.candidate.enablestays as sent.
Fixed
- Search configurations reject
company.sizewhengteexceedslte, returning a validation error (HTTP 400). - Omitting
icebreaker_settings.strict_custom_instructions, or sendingnull, stores and applies the field asfalse.
v2.11 - 2026-10-19
Added
- Job responses include optional
department_id,tech_stack,skills_required,languages_required,education_requirements,experience_years_minandseniority_levelwhen available.department_idis an array of IDs; an empty array means none was identified. Required languages use lowercase ISO 639-1 codes; minimum experience is in years and may be fractional. - Search configurations accept
job.department_idsandjob.department_ids_excludedto include or exclude precise departments, independently of company sectors. Included values are combined with OR; omitted or empty lists do not restrict the search.
Fixed
- OpenAPI lists the 197 department identifiers for both department filters, including their nullable array schemas.
v2.10 - 2026-10-14
Added
- Export webhooks include
X-Mantiks-Delivery-ID,X-Mantiks-Attempt-ID,X-Mantiks-PartandIdempotency-Keyheaders. Deduplicate byIdempotency-Key, which stays the same when the same delivery part is retried. A confirmed resend after acceptance creates a new delivery ID and idempotency keys.
Changed
- Export webhook delivery retries connection failures known to occur before sending (including connection timeouts), HTTP 429 and HTTP 5xx responses automatically, up to five attempts per part, with waits of 1 minute, 5 minutes, 30 minutes and 2 hours. A valid
Retry-Aftercan extend the wait. - Response timeouts and interrupted attempts with uncertain receipt require an explicit manual retry because the destination may already have received the webhook. Redirects and other HTTP 4xx responses are not retried automatically, except HTTP 413, which triggers splitting into smaller parts.
- Only HTTP 2xx responses confirm receipt. When an export is partially delivered, retries resend only parts without confirmed receipt.
- Custom webhook headers cannot use the four delivery headers listed above.
v2.9 - 2026-10-14
Added
- Added optional
company.sizesto search configurations: employee ranges combined with OR, with the known company size entirely within the selected ranges. Use[]to clear the filter.
Changed
- Deprecated the search filter
company.sizein favor ofcompany.sizes. The legacy object and its overlap behavior remain supported. Do not send both filters active together. PATCH /searches/{id}/confignow preserves the search state for all configurations. Saving an inactive manual search no longer activates it; usePATCH /searches/{id}/stateto activate it explicitly.
v2.8 - 2026-10-13
Added
- Added nullable
company_siretto export webhook lead payloads. - Added nullable
lead_full_nameto export webhook lead payloads.
v2.7 - 2026-10-08
Added
- Added optional, nullable
workplace_mode,contract_types(array), andwork_timeto job responses from
GET /jobs/{id},GET /jobs/{id}/history, andPOST /companies/{id}/jobs. - Added the same fields under
jobinGET /exports/{id}/leadsresponses. - Added
job_offer_workplace_mode,job_offer_contract_types, andjob_offer_work_timeto export webhook payloads.
v2.6 - 2026-10-05
Added
- 2026-10-02 — Added optional job filters to API configuration payloads:
job.contract_types_include,job.contract_types_exclude,job.work_time, andjob.workplace_modes. - 2026-10-02 — Added
company.reverse_sourcing_min_probability, an integer between0and100, defaulting to70. - 2026-10-02 — Added
setting.launch_weekdaysfor daily exports (frequency=1).- Values range from Monday (
0) to Sunday (6). - Omitted or
nullmeans all days.
- Values range from Monday (
- 2026-10-02 — Added configurable webhook headers through
setting.webhook.header_nameandheader_value.header_valueis write-only: omit it to preserve the saved value; usenullto remove the header.- Responses expose
header_value_configuredinstead of the secret.
- 2026-09-30 — Added
people.phone.fullenrich_api_keyand thefullenrichphone strategy.- Added optional
config_idtoGET /people/{id}/reveal-phoneto use a saved search’s Kaspr or FullEnrich key without consuming Mantiks credits.
- Added optional
- 2026-09-16 — Added
?force_update=truetoGET /jobs/{id}/reverse-sourcing-agentto retry reverse sourcing. - 2026-09-15 — Added optional
code,details, andrequest_idfields to API error responses. - 2026-09-14 — Added
POST /searches/webhook/testto send a mocked export payload to the configured webhook. - 2026-09-14 — Added
icebreaker_settings.include_closing_salutation. - 2026-09-12 — Added optional
profile_picture_urlto person responses and exported lead contacts. - 2026-09-10 — Added synchronous batch endpoints:
POST /jobs/personas/batchPOST /jobs/best-fitting/batchPOST /jobs/reverse-sourcing-agent/batchPOST /people/reveal-email/batchPOST /people/reveal-phone/batch- Responses contain ordered
results, with astatusandresponsefor each item.
- 2026-09-04 — Added
actionto reverse-sourcing responses:nothing_found,keep_current_company, orreassign_to_company. - 2026-09-01 — Added optional
icebreaker_settingsfor custom instructions, hiring questions, recruiter information, and candidate context. - 2026-08-28 — Added optional
job.cleaned_job_titleandpeople.icebreaker_objectto exported leads. - 2026-08-03 — Added
setting.launch_timeandsetting.launch_timezonefor scheduled searches, and thecontact generation seededexport state. - 2026-06-22 — Added department support to location responses.
- 2026-06-19 — Added
GET /credits/balance, returning the authenticated account’s remainingleads_credits.
Changed
- 2026-09-22 —
job_urlcan now benullfor jobs without an application URL. - 2026-09-17 — Reduced synchronous batch limits from 25 to 10 items. Reverse-sourcing batches remain limited to 5 jobs.
- 2026-09-09 — Updated sector documentation and examples to use canonical identifiers, such as
softwareandsaas_cloud_services.
Fixed
- 2026-09-08 — Fixed credit charging for API v2 requests when optional backend arguments were omitted.
v2.5 - 2026-06-17
Added
- Added
people.persona_idto lead responses fromGET /exports/{id}/leads, identifying the matching persona.
v2.4 - 2026-06-15
Added
- Added
reverse_companiesto export lead API responses.- Available on
GET /exports/{id}/leads. - Returned when reverse sourcing is enabled and candidate final-client companies are found.
- Each company includes standard company fields plus optional
probabilityandexplanation.
- Available on
v2.3 - 2026-06-04
Added
- Added
config.setting.enable_icebreakerto API configuration payloads.- When enabled, Mantiks generates an explanation and icebreaker for each lead.
- Added
config.company.enable_reverse_sourcingto API configuration payloads.- When enabled, Mantiks searches recruiting-sector job offers and tries to identify the final client.
- Added the
GET /jobs/{id}/reverse-sourcing-agentendpoint.- Starts reverse sourcing for a specific job.
- Returns candidate companies with
company_id,probability, and optionalexplanation.
v2.2 - 2026-04-28
Added people.persona_strategy to API configuration payloads.
API callers can now choose the persona matching behavior with the same values used internally by Mantiks:
best: keep the best matching personaall: include all matching personas
v2.1 - 2026-04-21
Changed
- Updated
Search Configin the public API:- Renamed
people.persona_idtopeople.personas_ids - Changed the field type from a single string to an array of persona IDs
- Renamed
Why
- This aligns the API config format with the existing model, where multiple personas can already be selected.
Migration
Before:
{
"people": {
"persona_id": "special-best-fitting"
}
}
After:
{
"people": {
"personas_ids": ["special-best-fitting"]
}
}
