This endpoint returns all the available ways you can map your file columns and values to accepted models that can be imported during a bulk import operation.

This information lets you know what can be imported during your operation, what are the characteristics of those fields and their columns, which columns have a predefined list of possible data, etc.

With this information, you can build your request payload to POST /bulkImportJobs endpoint to map some information directly from your uploaded file, hardcode some information as static, map your uploaded data to other values, or make whatever mappings are necessary to create your import.

The response object have the properties listed below:

namestringThe unique name of the mapping type
displayNamestringA human readable version of the field name
allowMultipleModestringIf Single, you can only apply one of this mapping in a single job;
If SinglePerType, the entity can only have one value per type at a time (e.g. one Home Phone, and one Cell Phone) so you can specify multiple of this mapping as long as they are of different types;
If Multiple, the entity may have many values set for this Field and you can apply as many of this mapping in one request as desired
resourceTypesarrayThe names of the resourceType to which this field can be applied, such as Contacts or Contributions
fieldsarrayAn array describing the possible field/column mappings available for this mapping type.

The fields array, describing the column mappings available in this field item, can have the below properties:

namestringThe name of the field/column
descriptionstringA human readable description of the column
hasPredefinedValuesboolWhether the column requires a predefined set of possible values, under at least some circumstances
isRequiredboolIf true, the value for this field must be provided in bulk import, either from a mapped column or static value
canBeMappedToColumnboolWhether the column can draw values from your uploaded file, rather than requiring values be set statically for the entire upload file
parentsarrayAn array of other fields which must be mapped if this field has prerequisite dependencies

The parents array lists one or more prerequisites for this field to be mapped.

parentFieldNamestringThe name of a field which must be mapped in order for the child mapping to be created
limitedToParentValuesarrayOptional; A collection of permitted values for the parent field that is a prerequisite for the child mapping. Will be null if there is no constraint on the parent value.

The limitedToParentValues array is a collection of the limited set of permitted values which are required for the parent field.

namestringThe name of the permitted value
idstringThe unique identifier of the permitted value
Click Try It! to start a request and see the response here!