job-matches

Update Match Preferences

Update job match preferences. Creates preferences if none exist.

put/job-matches/preferences

Request

  • Base URL: https://api.aiapplyd.com/api/v1
  • URL: https://api.aiapplyd.com/api/v1/job-matches/preferences
  • Auth: HTTP bearer

Request body

benefitsstring[]

Must-have job benefits

companySizestring[]

Preferred company sizes

educationLevelstring

Minimum education level filter

excludeIndustriesstring[]

Industries to exclude from matches

experienceLevel'intern' | 'entry' | 'junior' | 'mid' | 'senior' | 'lead' | 'executive'

Target experience level (DEPRECATED scalar - prefer experienceLevels). When experienceLevels is present it wins; this scalar is kept so legacy mobile binaries keep working.

experienceLevelsstring[]

Target experience levels (multi-select, new source of truth). Empty/omitted = no seniority constraint. The first element is mirrored into the deprecated scalar experienceLevel.

includeRemoteboolean

Include region-restricted remote jobs (workStyles "remote") even when specific locations are set. Does NOT control worldwide remote - see remoteGlobal.

remoteGlobalboolean

Accept worldwide "Remote - Anywhere (Global)" jobs from any region. Independent of includeRemote/workStyles "remote" (which stay region-restricted). Set via the "Remote - Anywhere (Global)" option in the location picker.

industriesstring[]

Target industries

isActiveboolean

Enable or disable daily matches

jobTypesstring[]

Preferred job types

locationsstring[]

Preferred locations as "City, Country" or "Country" (max 5). Middle admin segments (state/province) are stripped on ingest. Placeholder values ("anywhere", "any", ...) are rejected for security (they disable location scoping and let clients harvest the full job pool). An empty array is accepted ONLY for a caller opted into remoteGlobal - worldwide remote is itself the location answer.

salaryCurrency'usd' | 'eur' | 'gbp' | 'cad' | 'aud' | 'inr'

Currency for the salary band (converted to USD for matching). Defaults to usd.

salaryMaxnumber

Maximum salary requirement

salaryMinnumber

Minimum salary requirement

skillsstring[]

User skills (from resume or manual entry)

targetRolesstring[]

Target role titles (max 5). When present, at least one specific title is required - empty arrays and placeholder values ("anywhere", "any", ...) are rejected for security (they disable role scoping and let clients harvest the full job pool).

visaSponsorshipstring

Visa sponsorship preference

workStylesstring[]

Preferred work styles (onsite/hybrid/remote) - multi-select, at least 1 required. Geo scoping is inferred from locations, NOT this field.

Example request

{
  "locations": [
    "San Francisco, United States"
  ],
  "salaryCurrency": "usd",
  "salaryMax": 190000,
  "salaryMin": 150000,
  "targetRoles": [
    "Senior Software Engineer",
    "Full Stack Developer"
  ],
  "workStyles": [
    "remote",
    "hybrid"
  ]
}

Response

Preferences updated

successtrue required

Example response

{
  "data": {
    "benefits": null,
    "companySize": [
      "startup",
      "medium"
    ],
    "createdAt": "2026-09-01T12:00:00.000Z",
    "educationLevel": "bachelor",
    "excludeIndustries": null,
    "experienceLevel": "senior",
    "experienceLevels": [
      "senior"
    ],
    "id": 311,
    "includeRemote": true,
    "industries": [
      "Software & SaaS",
      "Financial Services"
    ],
    "isActive": true,
    "jobTypes": [
      "full_time"
    ],
    "locations": [
      "San Francisco, United States"
    ],
    "remoteGlobal": false,
    "salaryCurrency": "usd",
    "salaryMax": 190000,
    "salaryMin": 150000,
    "skills": [
      "TypeScript",
      "React",
      "Node.js",
      "PostgreSQL"
    ],
    "targetRoles": [
      "Senior Software Engineer",
      "Full Stack Developer"
    ],
    "updatedAt": "2026-09-20T08:30:00.000Z",
    "visaSponsorship": null,
    "workStyles": [
      "remote",
      "hybrid"
    ]
  },
  "success": true
}

Changes

No recorded changes to this operation across all 1 revision of this API.