http://localhost
API for managing data import profiles
Create a new jobProfile item.
POST /data-import-profiles/jobProfiles
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Job Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Job Profile object",
"javaType": "org.folio.rest.jaxrs.model.JobProfile"
},
"addedRelations": {
"description": "Job profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Job profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "448ae575-daec-49c1-8041-d64c8ed8e5b1",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Returns a newly created item, with server-controlled fields like 'id' populated
URI to the created jobProfile item
Media type: application/json
Type: any
Example:
{
"id": "448ae575-daec-49c1-8041-d64c8ed8e5b1",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to add jobProfile -- malformed JSON at 13:3"
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to create jobProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Retrieve a list of jobProfile items.
GET /data-import-profiles/jobProfiles
selection condition of Job Profiles by field 'deleted'
Example:
false
Load profile with related child and parent profiles
Example:
false
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Requested language. Optional. [lang=en]
Returns a list of jobProfile items
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of Job Profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"jobProfiles": {
"description": "List of Job Profiles",
"type": "array",
"id": "jobProfileList",
"items": {
"type": "object",
"$ref": "jobProfile.json"
}
},
"totalRecords": {
"description": "Total number of Job Profiles",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"jobProfiles",
"totalRecords"
]
}
Example:
{
"jobProfiles": [
{
"id": "448ae575-daec-49c1-8041-d64c8ed8e5b1",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "295e28b4-aea2-4458-9073-385a31e1da05",
"name": "Load shelfready cataloging records",
"description": "Overlay brief bibs, update holdings and item records, create invoice",
"dataType": "MARC",
"tags": {
"tagList": [
"cat", "weekly"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-10-30T12:42:18.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-03T10:01:30.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "bb689511-5365-4050-8084-a03d94728d88",
"name": "Approval plan records",
"description": "Create bibs, holdings, items, orders, and invoices",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "cat", "weekly"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-10-30T12:45:33.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-03T11:22:30.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "3e705998-9169-4f31-b048-90ffdcbd24c1",
"name": "Load KB eResource records",
"description": "Create, update, delete existing eContent bib records",
"dataType": "MARC",
"tags": {
"tagList": [
"monthly", "KB"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-01T10:12:51.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-02T09:05:30.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "15426802-bb0d-4dfb-8eee-90f64fed0cf1",
"name": "ETL Bib records",
"description": "Reload bib records that were exported and updated outside of FOLIO",
"dataType": "MARC",
"tags": {
"tagList": []
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-01T10:37:53.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-03T11:45:21.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "87e4ad58-d677-43dd-8b04-9795741b2103",
"name": "Loading authority records",
"description": "Load new and updated MARC authority records",
"dataType": "MARC",
"tags": {
"tagList": [
"cat", "monthly"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-02T10:20:32.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-02T10:45:21.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "72af7eb7-d7e2-4d16-93ac-682b9a58a94c",
"name": "DDA discovery records",
"description": "Load DDA discovery MARC records to create bib and holdings",
"dataType": "MARC",
"tags": {
"tagList": [
"weekly", "DDA"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-02T10:18:44.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-03T14:20:21.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "4d1b5024-2c49-42bd-b781-4330d14cefb0",
"name": "Create orders from spreadsheets",
"description": "Selector-provided spreadsheet creates instance, holdings, item, and order",
"dataType": "Delimited",
"tags": {
"tagList": [
"acq"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-01T10:09:51.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-01T15:21:28.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "b32e79bc-01d9-4d31-bc08-a3621fcfc1aa",
"name": "Load EDI Invoice",
"description": "",
"dataType": "EDIFACT",
"tags": {
"tagList": [
"acq"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-01T10:18:42.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-05T13:08:12.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
},
{
"id": "828a787c-bcf3-4c28-891a-9e6f3ba5068b",
"name": "Load MARC, then throw away",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; then discard MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-11-01T11:08:21.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-12-01T19:01:41.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
],
"totalRecords": 10
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
unable to list jobProfiles -- malformed parameter 'query', syntax error at column 6
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to list jobProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Retrieve jobProfile item with given {jobProfileId}
GET /data-import-profiles/jobProfiles/{id}
Load profile with related child and parent profiles
Example:
false
Requested language. Optional. [lang=en]
Returns item with a given ID
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Job Profile schema",
"additionalProperties": false,
"type": "object",
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Job Profile name",
"type": "string"
},
"description": {
"description": "Job Profile description",
"type": "string"
},
"dataType": {
"description": "Data type",
"type": "string",
"$ref": "../common/dataType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON-MATCH"
]
},
"tags": {
"description": "Set of tags assigned to the current Job Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"deleted": {
"description": "Flag indicates that the Job Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Job Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"dataType"
]
}
Example:
{
"id": "448ae575-daec-49c1-8041-d64c8ed8e5b1",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"jobProfile not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Update jobProfile item with given {jobProfileId}
PUT /data-import-profiles/jobProfiles/{id}
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Job Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Job Profile object",
"javaType": "org.folio.rest.jaxrs.model.JobProfile"
},
"addedRelations": {
"description": "Job profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Job profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "448ae575-daec-49c1-8041-d64c8ed8e5b1",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataType": "MARC",
"tags": {
"tagList": [
"acq", "daily"
]
},
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Job Profile schema",
"additionalProperties": false,
"type": "object",
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Job Profile name",
"type": "string"
},
"description": {
"description": "Job Profile description",
"type": "string"
},
"dataType": {
"description": "Data type",
"type": "string",
"$ref": "../common/dataType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON-MATCH"
]
},
"tags": {
"description": "Set of tags assigned to the current Job Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"deleted": {
"description": "Flag indicates that the Job Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Job Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"dataType"
]
}
Item successfully updated
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to update jobProfile -- malformed JSON at 13:4"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"jobProfile not found"
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Delete jobProfile item with given {jobProfileId}
DELETE /data-import-profiles/jobProfiles/{id}
Requested language. Optional. [lang=en]
Item deleted successfully
Media type: text/plain
Type: any
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to delete jobProfile -- constraint violation"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"jobProfile not found"
Media type: text/plain
Type: any
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Create a new matchProfile item.
POST /data-import-profiles/matchProfiles
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Match Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Match Profile object",
"javaType": "org.folio.rest.jaxrs.model.MatchProfile"
},
"addedRelations": {
"description": "Match profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Match profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "POL-MARC",
"description": "Use for POL in 990 p",
"tags": {
"tagList": [
"pol"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"matchDetails": [
{
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"incomingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "990"
},
{
"label": "indicator1",
"value": " "
},
{
"label": "indicator2",
"value": " "
},
{
"label": "recordSubfield",
"value": "p"
}
]
},
"matchCriterion": "EXACTLY_MATCHES",
"existingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "PO_LINE_NUMBER"
}
]
}
}
],
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "@janedoe",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": "@janedoe"
}
}
Returns a newly created item, with server-controlled fields like 'id' populated
URI to the created matchProfile item
Media type: application/json
Type: any
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "POL-MARC",
"description": "Use for POL in 990 p",
"tags": {
"tagList": [
"pol"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"matchDetails": [
{
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"incomingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "990"
},
{
"label": "indicator1",
"value": " "
},
{
"label": "indicator2",
"value": " "
},
{
"label": "recordSubfield",
"value": "p"
}
]
},
"matchCriterion": "EXACTLY_MATCHES",
"existingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "PO_LINE_NUMBER"
}
]
}
}
],
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "@janedoe",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": "@janedoe"
}
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to add matchProfile -- malformed JSON at 13:3"
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to create matchProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Retrieve a list of matchProfile items.
GET /data-import-profiles/matchProfiles
selection condition of Match Profiles by field 'deleted'
Example:
false
Load profile with related child and parent profiles
Example:
false
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Requested language. Optional. [lang=en]
Returns a list of matchProfile items
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of Match Profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"matchProfiles": {
"description": "List of Match Profiles",
"type": "array",
"id": "matchProfileList",
"items": {
"type": "object",
"$ref": "matchProfile.json"
}
},
"totalRecords": {
"description": "Total number of Match Profiles",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"matchProfiles",
"totalRecords"
]
}
Example:
{
"matchProfiles": [
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "POL-MARC",
"description": "Use for POL in 990 p",
"tags": {
"tagList": [
"pol"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"matchDetails": [
{
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"incomingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "990"
},
{
"label": "indicator1",
"value": " "
},
{
"label": "indicator2",
"value": " "
},
{
"label": "recordSubfield",
"value": "p"
}
]
},
"matchCriterion": "EXACTLY_MATCHES",
"existingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "PO_LINE_NUMBER"
}
]
}
}
],
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "@janedoe",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": "@janedoe"
}
}
],
"totalRecords": 1
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
unable to list matchProfiles -- malformed parameter 'query', syntax error at column 6
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to list matchProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Retrieve matchProfile item with given {matchProfileId}
GET /data-import-profiles/matchProfiles/{id}
Load profile with related child and parent profiles
Example:
false
Requested language. Optional. [lang=en]
Returns item with a given ID
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Match Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Match Profile name",
"type": "string"
},
"description": {
"description": "Match Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Match Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"incomingRecordType": {
"description": "Incoming record type",
"type": "string",
"$ref": "entityType.json"
},
"existingRecordType": {
"description": "Existing record type to match",
"type": "string",
"$ref": "entityType.json"
},
"matchDetails": {
"description": "Match profile details list",
"type": "array",
"items": {
"type": "object",
"$ref": "match-profile-detail/matchDetail.json"
}
},
"deleted": {
"description": "Flag indicates that the Match Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Match Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"incomingRecordType",
"existingRecordType"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "POL-MARC",
"description": "Use for POL in 990 p",
"tags": {
"tagList": [
"pol"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"matchDetails": [
{
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"incomingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "990"
},
{
"label": "indicator1",
"value": " "
},
{
"label": "indicator2",
"value": " "
},
{
"label": "recordSubfield",
"value": "p"
}
]
},
"matchCriterion": "EXACTLY_MATCHES",
"existingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "PO_LINE_NUMBER"
}
]
}
}
],
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "@janedoe",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": "@janedoe"
}
}
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"matchProfile not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Update matchProfile item with given {matchProfileId}
PUT /data-import-profiles/matchProfiles/{id}
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Match Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Match Profile object",
"javaType": "org.folio.rest.jaxrs.model.MatchProfile"
},
"addedRelations": {
"description": "Match profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Match profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "POL-MARC",
"description": "Use for POL in 990 p",
"tags": {
"tagList": [
"pol"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"matchDetails": [
{
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "ORDER",
"incomingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "990"
},
{
"label": "indicator1",
"value": " "
},
{
"label": "indicator2",
"value": " "
},
{
"label": "recordSubfield",
"value": "p"
}
]
},
"matchCriterion": "EXACTLY_MATCHES",
"existingMatchExpression": {
"dataValueType": "VALUE_FROM_RECORD",
"fields": [
{
"label": "field",
"value": "PO_LINE_NUMBER"
}
]
}
}
],
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "@janedoe",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": "@janedoe"
}
}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Match Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Match Profile name",
"type": "string"
},
"description": {
"description": "Match Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Match Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"incomingRecordType": {
"description": "Incoming record type",
"type": "string",
"$ref": "entityType.json"
},
"existingRecordType": {
"description": "Existing record type to match",
"type": "string",
"$ref": "entityType.json"
},
"matchDetails": {
"description": "Match profile details list",
"type": "array",
"items": {
"type": "object",
"$ref": "match-profile-detail/matchDetail.json"
}
},
"deleted": {
"description": "Flag indicates that the Match Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Match Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"incomingRecordType",
"existingRecordType"
]
}
Item successfully updated
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to update matchProfile -- malformed JSON at 13:4"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"matchProfile not found"
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Delete matchProfile item with given {matchProfileId}
DELETE /data-import-profiles/matchProfiles/{id}
Requested language. Optional. [lang=en]
Item deleted successfully
Media type: text/plain
Type: any
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to delete matchProfile -- constraint violation"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"matchProfile not found"
Media type: text/plain
Type: any
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Create a new mappingProfile item.
POST /data-import-profiles/mappingProfiles
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Mapping Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Mapping Profile object",
"javaType": "org.folio.rest.jaxrs.model.MappingProfile"
},
"addedRelations": {
"description": "Mapping profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Mapping profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "MARC brief instance 1",
"description": "Preliminary instance from CoolVendor MARC order record",
"tags": {
"tagList": [
"cool-vendor"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"marcFieldProtectionSettings": [
{
"id": "2d706874-8a10-4d3e-a190-33c301d157e3",
"field": "050",
"indicator1": "",
"indicator2": "",
"subfield": "",
"data": "*",
"source": "USER",
"override": true,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
},
{
"id": "82d0b904-f8b0-4cc2-b238-7d8cddef7b7e",
"field": "700",
"indicator1": "",
"indicator2": "",
"subfield": "*",
"data": "*",
"source": "USER",
"override": false,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
}
],
"parentProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"childProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2019-01-01T11:550:09Z",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2019-01-12T14:21:11Z",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Returns a newly created item, with server-controlled fields like 'id' populated
URI to the created mappingProfile item
Media type: application/json
Type: any
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "MARC brief instance 1",
"description": "Preliminary instance from CoolVendor MARC order record",
"tags": {
"tagList": [
"cool-vendor"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"marcFieldProtectionSettings": [
{
"id": "2d706874-8a10-4d3e-a190-33c301d157e3",
"field": "050",
"indicator1": "",
"indicator2": "",
"subfield": "",
"data": "*",
"source": "USER",
"override": true,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
},
{
"id": "82d0b904-f8b0-4cc2-b238-7d8cddef7b7e",
"field": "700",
"indicator1": "",
"indicator2": "",
"subfield": "*",
"data": "*",
"source": "USER",
"override": false,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
}
],
"parentProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"childProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2019-01-01T11:550:09Z",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2019-01-12T14:21:11Z",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to add mappingProfile -- malformed JSON at 13:3"
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to create mappingProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Retrieve a list of mappingProfile items.
GET /data-import-profiles/mappingProfiles
selection condition of Mapping Profiles by field 'deleted'
Example:
false
Load profile with related child and parent profiles
Example:
false
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Requested language. Optional. [lang=en]
Returns a list of mappingProfile items
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of Mapping Profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"mappingProfiles": {
"description": "List of Mapping Profiles",
"type": "array",
"id": "mappingProfileList",
"items": {
"type": "object",
"$ref": "mappingProfile.json"
}
},
"totalRecords": {
"description": "Total number of Mapping Profiles",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"mappingProfiles",
"totalRecords"
]
}
Example:
{
"mappingProfiles": [
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "MARC brief instance 1",
"description": "Preliminary instance from CoolVendor MARC order record",
"tags": {
"tagList": [
"cool-vendor"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"metadata": {
"createdDate": "2019-01-01T11:550:09Z",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2019-01-12T14:21:11Z",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
],
"totalRecords": 1
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
unable to list mappingProfiles -- malformed parameter 'query', syntax error at column 6
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to list mappingProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Retrieve mappingProfile item with given {mappingProfileId}
GET /data-import-profiles/mappingProfiles/{id}
Load profile with related child and parent profiles
Example:
false
Requested language. Optional. [lang=en]
Returns item with a given ID
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Mapping Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Mapping Profile name",
"type": "string"
},
"description": {
"description": "Mapping Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Mapping Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"incomingRecordType": {
"description": "Incoming record type",
"type": "string",
"$ref": "./entityType.json"
},
"existingRecordType": {
"description": "FOLIO record type to mapping",
"type": "string",
"$ref": "./entityType.json"
},
"deleted": {
"description": "Flag indicates that the Mapping Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Mapping Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"marcFieldProtectionSettings": {
"description": "MARC field protection settings",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.MarcFieldProtectionSetting>",
"items": {
"type": "object",
"$ref": "marc-field-protection/marcFieldProtectionSetting.json"
}
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"mappingDetails": {
"description": "Mapping details with mapping rules",
"$ref": "mapping-profile-detail/mappingDetail.json"
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"incomingRecordType"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "MARC brief instance 1",
"description": "Preliminary instance from CoolVendor MARC order record",
"tags": {
"tagList": [
"cool-vendor"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"marcFieldProtectionSettings": [
{
"id": "2d706874-8a10-4d3e-a190-33c301d157e3",
"field": "050",
"indicator1": "",
"indicator2": "",
"subfield": "",
"data": "*",
"source": "USER",
"override": true,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
},
{
"id": "82d0b904-f8b0-4cc2-b238-7d8cddef7b7e",
"field": "700",
"indicator1": "",
"indicator2": "",
"subfield": "*",
"data": "*",
"source": "USER",
"override": false,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
}
],
"parentProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"childProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2019-01-01T11:550:09Z",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2019-01-12T14:21:11Z",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"mappingProfile not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Update mappingProfile item with given {mappingProfileId}
PUT /data-import-profiles/mappingProfiles/{id}
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Mapping Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Mapping Profile object",
"javaType": "org.folio.rest.jaxrs.model.MappingProfile"
},
"addedRelations": {
"description": "Mapping profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Mapping profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id": "1kl9m60r-fvb7-45n0-23c0-13n8gbkl7091",
"name": "MARC brief instance 1",
"description": "Preliminary instance from CoolVendor MARC order record",
"tags": {
"tagList": [
"cool-vendor"
]
},
"incomingRecordType": "MARC_BIBLIOGRAPHIC",
"existingRecordType": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "Jane",
"lastName": "Doe",
"userName": "@janedoe"
},
"marcFieldProtectionSettings": [
{
"id": "2d706874-8a10-4d3e-a190-33c301d157e3",
"field": "050",
"indicator1": "",
"indicator2": "",
"subfield": "",
"data": "*",
"source": "USER",
"override": true,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
},
{
"id": "82d0b904-f8b0-4cc2-b238-7d8cddef7b7e",
"field": "700",
"indicator1": "",
"indicator2": "",
"subfield": "*",
"data": "*",
"source": "USER",
"override": false,
"metadata": {
"createdDate": "2020-08-13T14:44:07Z",
"createdByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"createdByUsername": "@janedoe",
"updatedDate": "2020-08-13T14:44:07Z",
"updatedByUserId": "201e6a06-b60d-4618-bfcb-a551cbdc9f2f",
"updatedByUsername": "@janedoe"
}
}
],
"parentProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"childProfiles": [
{
"id": "0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId": "dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType": "JOB_PROFILE",
"content": {
"id": "dc4ac439-57ae-4779-872e-1892b163bb47",
"name": "Load vendor order records",
"description": "Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes": [
"MARC"
],
"tags": {
"tagList": [
"acq",
"daily"
]
}
}
}
],
"metadata": {
"createdDate": "2019-01-01T11:550:09Z",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2019-01-12T14:21:11Z",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Mapping Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Mapping Profile name",
"type": "string"
},
"description": {
"description": "Mapping Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Mapping Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"incomingRecordType": {
"description": "Incoming record type",
"type": "string",
"$ref": "./entityType.json"
},
"existingRecordType": {
"description": "FOLIO record type to mapping",
"type": "string",
"$ref": "./entityType.json"
},
"deleted": {
"description": "Flag indicates that the Mapping Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Mapping Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"marcFieldProtectionSettings": {
"description": "MARC field protection settings",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.MarcFieldProtectionSetting>",
"items": {
"type": "object",
"$ref": "marc-field-protection/marcFieldProtectionSetting.json"
}
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"mappingDetails": {
"description": "Mapping details with mapping rules",
"$ref": "mapping-profile-detail/mappingDetail.json"
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"incomingRecordType"
]
}
Item successfully updated
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to update mappingProfile -- malformed JSON at 13:4"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"mappingProfile not found"
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Delete mappingProfile item with given {mappingProfileId}
DELETE /data-import-profiles/mappingProfiles/{id}
Requested language. Optional. [lang=en]
Item deleted successfully
Media type: text/plain
Type: any
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to delete mappingProfile -- constraint violation"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"mappingProfile not found"
Media type: text/plain
Type: any
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Create a new actionProfile item.
POST /data-import-profiles/actionProfiles
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Action Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Action Profile object",
"javaType": "org.folio.rest.jaxrs.model.ActionProfile"
},
"addedRelations": {
"description": "Action profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Action profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id":"cf3d7393-8534-44fb-93fd-7495d220f4f6",
"name":"Create preliminary instance",
"description":"Brief instance created by order, will be updated later",
"tags":{
"tagList":[
"acq-related",
"preliminary"
]
},
"reactTo":"NON-MATCH",
"action":"CREATE",
"folioRecord":"INSTANCE",
"deleted":false,
"userInfo":{
"firstName":"DIKU",
"lastName":"ADMINISTRATOR",
"userName":"diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata":{
"createdDate":"2018-10-30T12:41:22.000",
"createdByUserId":"",
"createdByUsername":"",
"updatedDate":"2018-11-02T12:09:51.000",
"updatedByUserId":"",
"updatedByUsername":""
}
}
Returns a newly created item, with server-controlled fields like 'id' populated
URI to the created actionProfile item
Media type: application/json
Type: any
Example:
{
"id":"cf3d7393-8534-44fb-93fd-7495d220f4f6",
"name":"Create preliminary instance",
"description":"Brief instance created by order, will be updated later",
"tags":{
"tagList":[
"acq-related",
"preliminary"
]
},
"reactTo":"NON-MATCH",
"action":"CREATE",
"folioRecord":"INSTANCE",
"deleted":false,
"userInfo":{
"firstName":"DIKU",
"lastName":"ADMINISTRATOR",
"userName":"diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata":{
"createdDate":"2018-10-30T12:41:22.000",
"createdByUserId":"",
"createdByUsername":"",
"updatedDate":"2018-11-02T12:09:51.000",
"updatedByUserId":"",
"updatedByUsername":""
}
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to add actionProfile -- malformed JSON at 13:3"
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to create actionProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Retrieve a list of actionProfile items.
GET /data-import-profiles/actionProfiles
selection condition of Action Profiles by field 'deleted'
Example:
false
Load profile with related child and parent profiles
Example:
false
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Requested language. Optional. [lang=en]
Returns a list of actionProfile items
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of Action Profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"actionProfiles": {
"description": "List of Action Profiles",
"type": "array",
"id": "actionProfileList",
"items": {
"type": "object",
"$ref": "actionProfile.json"
}
},
"totalRecords": {
"description": "Total number of Action Profiles",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"actionProfiles",
"totalRecords"
]
}
Example:
{
"actionProfiles": [
{
"id": "cf3d7393-8534-44fb-93fd-7495d220f4f6",
"name": "Create preliminary instance",
"description": "Brief instance created by order, will be updated later",
"tags": {
"tagList": [
"acq-related", "preliminary"
]
},
"reactTo": "NON-MATCH",
"action": "CREATE",
"folioRecord": "INSTANCE",
"deleted": false,
"userInfo": {
"firstName": "DIKU",
"lastName": "ADMINISTRATOR",
"userName": "diku_admin"
},
"metadata": {
"createdDate": "2018-10-30T12:41:22.000",
"createdByUserId": "",
"createdByUsername": "",
"updatedDate": "2018-11-02T12:09:51.000",
"updatedByUserId": "",
"updatedByUsername": ""
}
}
],
"totalRecords": 1
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
unable to list actionProfiles -- malformed parameter 'query', syntax error at column 6
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to list actionProfiles -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Retrieve actionProfile item with given {actionProfileId}
GET /data-import-profiles/actionProfiles/{id}
Load profile with related child and parent profiles
Example:
false
Requested language. Optional. [lang=en]
Returns item with a given ID
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Action Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Action Profile name",
"type": "string"
},
"description": {
"description": "Action Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Action Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON-MATCH"
]
},
"action": {
"description": "Action type. CREATE allowed for all record types. UPDATE allowed for all record types except Orders, Invoices. DELETE allowed for all records types. MODIFY allowed for MARC records only",
"type": "string",
"enum": [
"CREATE",
"UPDATE",
"DELETE",
"MODIFY"
]
},
"folioRecord": {
"description": "Record type",
"type": "string",
"enum": [
"INSTANCE",
"HOLDINGS",
"ITEM",
"ORDER",
"INVOICE",
"MARC_BIBLIOGRAPHIC",
"MARC_HOLDINGS",
"MARC_AUTHORITY"
]
},
"deleted": {
"description": "Flag indicates that the Action Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Action Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"action",
"folioRecord"
]
}
Example:
{
"id":"cf3d7393-8534-44fb-93fd-7495d220f4f6",
"name":"Create preliminary instance",
"description":"Brief instance created by order, will be updated later",
"tags":{
"tagList":[
"acq-related",
"preliminary"
]
},
"reactTo":"NON-MATCH",
"action":"CREATE",
"folioRecord":"INSTANCE",
"deleted":false,
"userInfo":{
"firstName":"DIKU",
"lastName":"ADMINISTRATOR",
"userName":"diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata":{
"createdDate":"2018-10-30T12:41:22.000",
"createdByUserId":"",
"createdByUsername":"",
"updatedDate":"2018-11-02T12:09:51.000",
"updatedByUserId":"",
"updatedByUsername":""
}
}
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"actionProfile not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Update actionProfile item with given {actionProfileId}
PUT /data-import-profiles/actionProfiles/{id}
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Action Profile Update/Create schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Profile identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"profile": {
"description": "Action Profile object",
"javaType": "org.folio.rest.jaxrs.model.ActionProfile"
},
"addedRelations": {
"description": "Action profile added relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"deletedRelations": {
"description": "Action profile deleted relations",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileAssociation>",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
}
},
"required": [
"profile"
]
}
Example:
{
"id":"cf3d7393-8534-44fb-93fd-7495d220f4f6",
"name":"Create preliminary instance",
"description":"Brief instance created by order, will be updated later",
"tags":{
"tagList":[
"acq-related",
"preliminary"
]
},
"reactTo":"NON-MATCH",
"action":"CREATE",
"folioRecord":"INSTANCE",
"deleted":false,
"userInfo":{
"firstName":"DIKU",
"lastName":"ADMINISTRATOR",
"userName":"diku_admin"
},
"parentProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"childProfiles":[
{
"id":"0fc0ba76-d560-4541-826f-f8bdd3b09841",
"profileId":"dc4ac439-57ae-4779-872e-1892b163bb47",
"contentType":"JOB_PROFILE",
"content":{
"id":"dc4ac439-57ae-4779-872e-1892b163bb47",
"name":"Load vendor order records",
"description":"Ordered on vendor site; load MARC to create bib, holdings, item, and order; keep MARC",
"dataTypes":[
"MARC"
],
"tags":{
"tagList":[
"acq",
"daily"
]
}
}
}
],
"metadata":{
"createdDate":"2018-10-30T12:41:22.000",
"createdByUserId":"",
"createdByUsername":"",
"updatedDate":"2018-11-02T12:09:51.000",
"updatedByUserId":"",
"updatedByUsername":""
}
}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Action Profile schema",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$ref": "../common/uuid.json"
},
"name": {
"description": "Action Profile name",
"type": "string"
},
"description": {
"description": "Action Profile description",
"type": "string"
},
"tags": {
"description": "Set of tags assigned to the current Action Profile",
"type": "object",
"$ref": "../../raml-util/schemas/tags.schema"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON-MATCH"
]
},
"action": {
"description": "Action type. CREATE allowed for all record types. UPDATE allowed for all record types except Orders, Invoices. DELETE allowed for all records types. MODIFY allowed for MARC records only",
"type": "string",
"enum": [
"CREATE",
"UPDATE",
"DELETE",
"MODIFY"
]
},
"folioRecord": {
"description": "Record type",
"type": "string",
"enum": [
"INSTANCE",
"HOLDINGS",
"ITEM",
"ORDER",
"INVOICE",
"MARC_BIBLIOGRAPHIC",
"MARC_HOLDINGS",
"MARC_AUTHORITY"
]
},
"deleted": {
"description": "Flag indicates that the Action Profile marked as deleted",
"type": "boolean",
"default": false
},
"userInfo": {
"description": "First name, last name and username of the user, who updated the Action Profile",
"type": "object",
"$ref": "../common/userInfo.json"
},
"parentProfiles": {
"description": "Associated parent profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"childProfiles": {
"description": "Associated children profiles. Not required field that uses only for batch update/create",
"javaType": "java.util.List<org.folio.rest.jaxrs.model.ProfileSnapshotWrapper>",
"items": {
"type": "object",
"$ref": "./profileSnapshotWrapper.json"
}
},
"metadata": {
"description": "Metadata provided by the server",
"type": "object",
"$ref": "../../raml-util/schemas/metadata.schema",
"readonly": true
}
},
"required": [
"name",
"action",
"folioRecord"
]
}
Item successfully updated
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to update actionProfile -- malformed JSON at 13:4"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"actionProfile not found"
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Delete actionProfile item with given {actionProfileId}
DELETE /data-import-profiles/actionProfiles/{id}
Requested language. Optional. [lang=en]
Item deleted successfully
Media type: text/plain
Type: any
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to delete actionProfile -- constraint violation"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"actionProfile not found"
Media type: text/plain
Type: any
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Create a new profileAssociation item.
POST /data-import-profiles/profileAssociations
It needs to identify master profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE
It needs to identify detail profile type in association
Example:
ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
Example:
{
"id": "d79c0c7f-1dca-4523-b438-dd00a5a1f9a6",
"masterProfileId": "4623d797-6987-46ed-925d-0e8c6fe6678a",
"detailProfileId": "6146e173-c664-4404-9d58-c913d89e7114",
"order": 2,
"triggered": "true"
}
Returns a newly created item, with server-controlled fields like 'id' populated
URI to the created profileAssociation item
Media type: application/json
Type: any
Example:
{
"id": "d79c0c7f-1dca-4523-b438-dd00a5a1f9a6",
"masterProfileId": "4623d797-6987-46ed-925d-0e8c6fe6678a",
"detailProfileId": "6146e173-c664-4404-9d58-c913d89e7114",
"order": 2,
"triggered": "true"
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to add profileAssociation -- malformed JSON at 13:3"
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to create profileAssociations -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
Retrieve a list of profileAssociation items.
GET /data-import-profiles/profileAssociations
It needs to identify master profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE
It needs to identify detail profile type in association
Example:
ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
Requested language. Optional. [lang=en]
Returns a list of profileAssociation items
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of Profile associations",
"type": "object",
"additionalProperties": false,
"properties": {
"profileAssociations": {
"description": "List of Profile associations",
"type": "array",
"id": "profileAssociationList",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
},
"totalRecords": {
"description": "Total number of Profile associations",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"profileAssociations",
"totalRecords"
]
}
Example:
{
"profileAssociations": [
{
"id": "d79c0c7f-1dca-4523-b438-dd00a5a1f9a6",
"masterProfileId": "4623d797-6987-46ed-925d-0e8c6fe6678a",
"detailProfileId": "6146e173-c664-4404-9d58-c913d89e7114",
"order": 0,
"triggered": "false"
}
],
"totalRecords": 1
}
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
unable to list profileAssociations -- malformed parameter 'query', syntax error at column 6
Not authorized to perform requested action
Media type: text/plain
Type: any
Example:
unable to list profileAssociations -- unauthorized
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Retrieve profileAssociation item with given {profileAssociationId}
GET /data-import-profiles/profileAssociations/{id}
It needs to identify master profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE
It needs to identify detail profile type in association
Example:
ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
Requested language. Optional. [lang=en]
Returns item with a given ID
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
Example:
{
"id": "d79c0c7f-1dca-4523-b438-dd00a5a1f9a6",
"masterProfileId": "4623d797-6987-46ed-925d-0e8c6fe6678a",
"detailProfileId": "6146e173-c664-4404-9d58-c913d89e7114",
"order": 2,
"triggered": "true"
}
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"profileAssociation not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Update profileAssociation item with given {profileAssociationId}
PUT /data-import-profiles/profileAssociations/{id}
It needs to identify master profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE
It needs to identify detail profile type in association
Example:
ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
Requested language. Optional. [lang=en]
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
Example:
{
"id": "d79c0c7f-1dca-4523-b438-dd00a5a1f9a6",
"masterProfileId": "4623d797-6987-46ed-925d-0e8c6fe6678a",
"detailProfileId": "6146e173-c664-4404-9d58-c913d89e7114",
"order": 2,
"triggered": "true"
}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema represents m2m association between profiles. One kind of 'master' profiles can be associated to another kind of 'detail' profiles",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Unique identifier",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"masterProfileId": {
"description": "Unique identifier of the 'master' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"detailProfileId": {
"description": "Unique identifier of the 'detail' profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"triggered": {
"description": "Boolean flag identifies if the 'detail' profile has triggered by the 'master' profile",
"type": "boolean",
"default": "false"
},
"masterProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"detailProfileType": {
"description": "Type of master profile",
"type": "string",
"enum": [
"ACTION_PROFILE",
"MAPPING_PROFILE",
"MATCH_PROFILE",
"JOB_PROFILE"
]
},
"jobProfileId": {
"description": "Unique identifier of the job profile, it is used to distinguish associations when building a snapshot tree for particular job profile",
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "string",
"pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[1-5][a-fA-F0-9]{3}-[89abAB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$"
}
},
"required": [
"masterProfileId",
"detailProfileId",
"order"
]
}
Item successfully updated
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to update profileAssociation -- malformed JSON at 13:4"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"profileAssociation not found"
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
internal server error, contact administrator
Delete profileAssociation item with given {profileAssociationId}
DELETE /data-import-profiles/profileAssociations/{id}
It needs to identify master profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
It needs to identify detail profile type in association
Example:
JOB_PROFILE, ACTION_PROFILE, MAPPING_PROFILE, MATCH_PROFILE
Requested language. Optional. [lang=en]
Item deleted successfully
Media type: text/plain
Type: any
Bad request, e.g. malformed request body or query parameter. Details of the error (e.g. name of the parameter or line/character number with malformed data) provided in the response.
Media type: text/plain
Type: any
Example:
"unable to delete profileAssociation -- constraint violation"
Item with a given ID not found
Media type: text/plain
Type: any
Example:
"profileAssociation not found"
Internal server error, e.g. due to misconfiguration
Media type: text/plain
Type: any
Example:
Internal server error, contact administrator
GET /data-import-profiles/profileAssociations/{id}/details
It needs to identify master profile type for an id
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE
It filters returned type of details. For example you need to get only MATCH_PROFILEs for a JOB_PROFILE but the JOB_PROFILE has ACTION_PROFILEs too. So use it as filter for a return type
Example:
ACTION_PROFILE, MATCH_PROFILE, MAPPING_PROFILE
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema describes Job Profile snapshot entity",
"javaType": "org.folio.rest.jaxrs.model.ProfileSnapshotWrapper",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Snapshot wrapper unique identifier",
"$ref": "../common/uuid.json"
},
"profileId": {
"description": "Profile unique identifier",
"$ref": "../common/uuid.json"
},
"contentType": {
"description": "Type of the content",
"type": "string",
"$ref": "profileSnapshotType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"content": {
"description": "Profile content (plain Object)"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"childSnapshotWrappers": {
"description": "Set of children profile snapshots",
"type": "array",
"items": {
"$ref": "profileSnapshotWrapper.json"
}
}
},
"required": [
"contentType",
"content"
],
"excludedFromEqualsAndHashCode": [
"content"
]
}
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
GET /data-import-profiles/profileAssociations/{id}/masters
Type of detail profile
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE, MAPPING_PROFILE
It filters returned type of masters. For example you need to get only JOB_PROFILEs for a MATCH_PROFILE but the MATCH_PROFILE has ACTION_PROFILEs too. So use it as filter for a return type
Example:
JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE, MAPPING_PROFILE
A query expressed as a CQL string (see dev.folio.org/reference/glossary#cql) using valid searchable fields. The first example below shows the general form of a full CQL query, but those fields might not be relevant in this context.
with valid searchable fields: for example userInfo.lastName=Doe
Example:
(username=="ab*" or personal.firstName=="ab*" or personal.lastName=="ab*") and active=="true" sortby personal.lastName personal.firstName barcode
userInfo.lastName=Doe
Skip over a number of elements by specifying an offset value for the query
Example:
0
Limit the number of elements returned in the response
Example:
10
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema describes Job Profile snapshot entity",
"javaType": "org.folio.rest.jaxrs.model.ProfileSnapshotWrapper",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Snapshot wrapper unique identifier",
"$ref": "../common/uuid.json"
},
"profileId": {
"description": "Profile unique identifier",
"$ref": "../common/uuid.json"
},
"contentType": {
"description": "Type of the content",
"type": "string",
"$ref": "profileSnapshotType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"content": {
"description": "Profile content (plain Object)"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"childSnapshotWrappers": {
"description": "Set of children profile snapshots",
"type": "array",
"items": {
"$ref": "profileSnapshotWrapper.json"
}
}
},
"required": [
"contentType",
"content"
],
"excludedFromEqualsAndHashCode": [
"content"
]
}
Validation errors
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "errors.schema",
"description": "A set of errors",
"type": "object",
"properties": {
"errors": {
"description": "List of errors",
"id": "errors",
"type": "array",
"items": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "error.schema",
"description": "An error",
"properties": {
"message": {
"type": "string",
"description": "Error message text"
},
"type": {
"type": "string",
"description": "Error message type"
},
"code": {
"type": "string",
"description": "Error message code"
},
"parameters": {
"description": "Error message parameters",
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "parameters.schema",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
}
},
"required": [
"message"
]
}
},
"total_records": {
"description": "Total number of errors",
"type": "integer"
}
}
}
Example:
{
"errors": [
{
"message": "may not be null",
"type": "1",
"code": "-1",
"parameters": [
{
"key": "moduleTo",
"value": "null"
}
]
}
]
}
Method to get Job Profile Snapshot by id
GET /data-import-profiles/jobProfileSnapshots/{id}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema describes Job Profile snapshot entity",
"javaType": "org.folio.rest.jaxrs.model.ProfileSnapshotWrapper",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Snapshot wrapper unique identifier",
"$ref": "../common/uuid.json"
},
"profileId": {
"description": "Profile unique identifier",
"$ref": "../common/uuid.json"
},
"contentType": {
"description": "Type of the content",
"type": "string",
"$ref": "profileSnapshotType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"content": {
"description": "Profile content (plain Object)"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"childSnapshotWrappers": {
"description": "Set of children profile snapshots",
"type": "array",
"items": {
"$ref": "profileSnapshotWrapper.json"
}
}
},
"required": [
"contentType",
"content"
],
"excludedFromEqualsAndHashCode": [
"content"
]
}
Method to create Job Profile Snapshot by Job Profile id
POST /data-import-profiles/jobProfileSnapshots/{id}
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema describes Job Profile snapshot entity",
"javaType": "org.folio.rest.jaxrs.model.ProfileSnapshotWrapper",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Snapshot wrapper unique identifier",
"$ref": "../common/uuid.json"
},
"profileId": {
"description": "Profile unique identifier",
"$ref": "../common/uuid.json"
},
"contentType": {
"description": "Type of the content",
"type": "string",
"$ref": "profileSnapshotType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"content": {
"description": "Profile content (plain Object)"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"childSnapshotWrappers": {
"description": "Set of children profile snapshots",
"type": "array",
"items": {
"$ref": "profileSnapshotWrapper.json"
}
}
},
"required": [
"contentType",
"content"
],
"excludedFromEqualsAndHashCode": [
"content"
]
}
Bad request
Media type: text/plain
Type: any
Example:
Bad request
Internal server error
Media type: text/plain
Type: any
Example:
Internal server error
Get a list of entity types
GET /data-import-profiles/entityTypes
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "Collection of entity types",
"type": "object",
"additionalProperties": false,
"properties": {
"entityTypes": {
"description": "Set of entity types",
"type": "array",
"id": "entityTypeList",
"items": {
"type": "string"
}
},
"totalRecords": {
"description": "Total number of entity types",
"type": "integer"
}
},
"excludedFromEqualsAndHashCode": [
"totalRecords"
],
"required": [
"entityTypes",
"totalRecords"
]
}
Bad request
Media type: text/plain
Type: any
Example:
Bad request
Internal server error
Media type: text/plain
Type: any
Example:
Internal server error
Get a profile snapshot structure for specified profile id and type. Acceptable profileType values are JOB_PROFILE, ACTION_PROFILE, MATCH_PROFILE, MAPPING_PROFILE.
GET /data-import-profiles/profileSnapshots/{profileId}
Indicates profile type
Example:
JOB_PROFILE
Indicates job profile id, should be specified when {profileType} parameter has value JOB_PROFILE or MATCH_PROFILE
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "This schema describes Job Profile snapshot entity",
"javaType": "org.folio.rest.jaxrs.model.ProfileSnapshotWrapper",
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"description": "Snapshot wrapper unique identifier",
"$ref": "../common/uuid.json"
},
"profileId": {
"description": "Profile unique identifier",
"$ref": "../common/uuid.json"
},
"contentType": {
"description": "Type of the content",
"type": "string",
"$ref": "profileSnapshotType.json"
},
"reactTo": {
"description": "Non-match also used when there is no match profile in the job",
"type": "string",
"enum": [
"MATCH",
"NON_MATCH"
]
},
"content": {
"description": "Profile content (plain Object)"
},
"order": {
"description": "The execution order of the 'detail' profile. Job, Action and Matching profiles have an execution order, but this field is always 0 for Mapping profiles because of o2o relationship",
"type": "integer",
"default": 0
},
"childSnapshotWrappers": {
"description": "Set of children profile snapshots",
"type": "array",
"items": {
"$ref": "profileSnapshotWrapper.json"
}
}
},
"required": [
"contentType",
"content"
],
"excludedFromEqualsAndHashCode": [
"content"
]
}
Bad request
Media type: text/plain
Type: any
Example:
Bad request
Internal server error
Media type: text/plain
Type: any
Example:
Internal server error