# Start Linkage Job Initiate a new linkage job Endpoint: POST /linkagejobs Version: 2 Security: apiKey ## Request fields (application/json): - `patternSources` (array) The source, in form of a BusinessPartner storage (at least one but can be more), to get the pattern records for the matching. - `patternSources.storageId` (string, required) Unique identifier of the Storage. Example: "72d6900fce6b326088f5d9d91049e3e6" - `patternSources.dataSourceIds` (array) Optional list of DataSource IDs of the storage (identified by the storageId) that should be used for matching. Example: ["648824a691d8d2503d65103e"] - `matchSources` (array) The source, in form of a BusinessPartner storage (at least one but can be more), to get the match records for the matching. - `countryShortNames` (array) If set, only the records that belong to the countries identified by these short names are processed. By default all records of the storage (means from all countries) are processed (considering other filters). Example: ["CH"] - `dataMatchingDefinitionId` (string) ID of the DataMatchingDefinition that should be used to perform the link matching. Example: "6461e6113b1865304b3038b6" - `decisionLogIds` (array) If set, feedback from listed Matching Decision Logs will be considered. Example: ["65dcb1d68f01e37c2cf9bbb2"] ## Response 200 fields (application/json): - `id` (string) Unique identifier of a job. Example: "35f23c03-1c22-45fe-9484-3ffe769325de" - `patternSources` (array) The source, in form of a BusinessPartner storage (at least one but can be more), to get the pattern records for the matching. - `patternSources.storageId` (string, required) Unique identifier of the Storage. Example: "72d6900fce6b326088f5d9d91049e3e6" - `patternSources.dataSourceIds` (array) Optional list of DataSource IDs of the storage (identified by the storageId) that should be used for matching. Example: ["648824a691d8d2503d65103e"] - `matchSources` (array) The source, in form of a BusinessPartner storage (at least one but can be more), to get the match records for the matching. - `countryShortNames` (array) List of country short names. Example: ["CH"] - `dataMatchingDefinitionId` (string) Id of the data matching definition. Example: "6461e6113b1865304b3038b6" - `decisionLogIds` (array) If set, feedback from listed Matching Decision Logs will be considered. Example: ["65dcb1d68f01e37c2cf9bbb2"] - `createdAt` (string) Date of creation (ISO 8601-compliant). Example: "2025-08-29T09:46:53Z" - `createdBy` (string) Creator of a resource. Example: "76248934691294444" - `status` (string) Curation Job execution status. Enum: "ARCHIVED", "UNKNOWN", "CREATED", "PERSISTED", "SCHEDULED", "WAITING", "COULDNT_START", "RUNNING", "FINISHED", "DIED", "CANCELED", "FAILED" - `progress` (integer) Progress (%) of the job. Example: "77" ## Response 400 fields (application/json): - `path` (string) Requested path which caused this error. Example: "/v2/businesspartners/lookup" - `status` (integer) RFC 7231 status code for this error. Example: "400" - `timestamp` (string) ISO 8601 representation of the timestamp. Example: "2025-08-29T09:46:53Z" - `error` (string) RFC 7231 error which belongs to the status code. Example: "BAD_REQUEST" - `message` (string) Details about the error. Example: "This user is not allowed to access this service."