---
updatedAt: 2025-09-15T09:14:12.000Z
agentTools:
  siteIndex: https://developer.jamf.com/llms.txt
  projectIndex: https://developer.jamf.com/jamf-pro/v11.14.0/llms.txt
---

# Create a new Inventory Preload record using JSON or CSV

Create a new Inventory Preload record using JSON or CSV.
A CSV template can be downloaded from /api/inventory-preload/csv-template.
Serial number and device type are required. All other fields are optional.
When a matching serial number exists in the Inventory Preload data, the record will be overwritten with the CSV data.
If the CSV file contains a new username and an email address is provided, the new user is created in Jamf Pro.
If the CSV file contains an existing username, the following user-related fields are updated in Jamf Pro.
Full Name,
Email Address,
Phone Number,
Position.
This endpoint does not do full validation of each record in the CSV data.
To do full validation, use the /inventory-preload/validate-csv endpoint first.

> ❗️ Deprecation Notice
>
> This endpoint has been deprecated and will be removed in a future version of Jamf Pro. Please update your application to use the newest version of [this endpoint](https://developer.jamf.com/jamf-pro/reference/post_v2-inventory-preload-csv).

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "Jamf Pro API",
    "termsOfService": "https://www.jamf.com/developer-resources/api-license-agreement",
    "version": "11.14.0"
  },
  "servers": [
    {
      "url": "https://yourServer.jamfcloud.com/api"
    }
  ],
  "x-readme": {
    "samples-languages": [
      "curl",
      "swift",
      "ruby",
      "python"
    ],
    "explorer-enabled": false,
    "proxy-enabled": true
  },
  "security": [
    {
      "Bearer": []
    },
    {
      "ApiClient": []
    },
    {
      "BasicAuth": [
        "/v1/auth/token"
      ]
    }
  ],
  "paths": {
    "/inventory-preload": {
      "post": {
        "tags": [
          "inventory-preload"
        ],
        "summary": "Create a new Inventory Preload record using JSON or CSV\n",
        "description": "Create a new Inventory Preload record using JSON or CSV.\nA CSV template can be downloaded from /api/inventory-preload/csv-template.\nSerial number and device type are required. All other fields are optional.\nWhen a matching serial number exists in the Inventory Preload data, the record will be overwritten with the CSV data.\nIf the CSV file contains a new username and an email address is provided, the new user is created in Jamf Pro.\nIf the CSV file contains an existing username, the following user-related fields are updated in Jamf Pro.\nFull Name,\nEmail Address,\nPhone Number,\nPosition.\nThis endpoint does not do full validation of each record in the CSV data.\nTo do full validation, use the /inventory-preload/validate-csv endpoint first.\n",
        "requestBody": {
          "description": "Inventory Preload record or records to be created",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InventoryPreloadRecord"
              }
            },
            "text/csv": {
              "schema": {
                "$ref": "#/components/schemas/InventoryPreloadRecord"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InventoryPreloadRecord"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        },
        "deprecated": true,
        "x-deprecation-date": "2020-01-01",
        "x-required-privileges": [
          "Create Inventory Preload Records"
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "ApiError": {
        "type": "object",
        "properties": {
          "httpStatus": {
            "type": "integer",
            "description": "HTTP status of the response",
            "example": 400
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ApiErrorCause"
            }
          }
        }
      },
      "ApiErrorCause": {
        "required": [
          "field"
        ],
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "description": "Error-specific code that can be used to identify localization string, etc.",
            "example": "8675309"
          },
          "field": {
            "type": "string",
            "description": "Name of the field that caused the error.",
            "example": "Name"
          },
          "description": {
            "type": "string",
            "description": "A general description of error for troubleshooting/debugging. Generally this text should not be displayed to a user; instead refer to errorCode and it's localized text",
            "example": "I've just picked up a fault in the AE35 unit. It's going to go 100% failure in 72 hours"
          },
          "id": {
            "type": "string",
            "description": "id of object with error. Optional.",
            "nullable": true,
            "example": "3"
          }
        }
      },
      "InventoryPreloadExtensionAttribute": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "example": "foo"
          },
          "value": {
            "type": "string",
            "example": "42"
          }
        }
      },
      "InventoryPreloadRecord": {
        "required": [
          "deviceType",
          "serialNumber"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "readOnly": true,
            "example": 1
          },
          "serialNumber": {
            "type": "string",
            "example": "C02L29ECF8J1"
          },
          "deviceType": {
            "type": "string",
            "example": "Computer",
            "enum": [
              "Computer",
              "Mobile Device",
              "Unknown"
            ]
          },
          "username": {
            "type": "string",
            "example": "admin"
          },
          "fullName": {
            "type": "string",
            "example": "Name"
          },
          "emailAddress": {
            "type": "string",
            "example": "ITBob@jamf.com"
          },
          "phoneNumber": {
            "type": "string",
            "example": "555-555-5555"
          },
          "position": {
            "type": "string",
            "example": "IT Team Lead"
          },
          "department": {
            "type": "string",
            "example": "IT"
          },
          "building": {
            "type": "string",
            "example": "Eau Claire"
          },
          "room": {
            "type": "string",
            "example": "4th Floor - Quad 3"
          },
          "poNumber": {
            "type": "string",
            "example": "8675309"
          },
          "poDate": {
            "type": "string",
            "example": "2019-02-04T21:09:31.661Z"
          },
          "warrantyExpiration": {
            "type": "string",
            "example": "2012-07-21"
          },
          "appleCareId": {
            "type": "string",
            "example": "5678"
          },
          "lifeExpectancy": {
            "type": "string",
            "example": "5 years"
          },
          "purchasePrice": {
            "type": "string",
            "example": "$399"
          },
          "purchasingContact": {
            "type": "string",
            "example": "Nick in IT"
          },
          "purchasingAccount": {
            "type": "string",
            "example": "IT Budget"
          },
          "leaseExpiration": {
            "type": "string",
            "example": "2015-06-19"
          },
          "barCode1": {
            "type": "string",
            "example": "123456789"
          },
          "barCode2": {
            "type": "string",
            "example": "123456789"
          },
          "assetTag": {
            "type": "string",
            "example": "ABCDEFG12345"
          },
          "vendor": {
            "type": "string",
            "example": "Apple"
          },
          "extensionAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InventoryPreloadExtensionAttribute"
            }
          }
        }
      }
    },
    "securitySchemes": {
      "Bearer": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      },
      "BasicAuth": {
        "type": "http",
        "description": "Basic auth is used only for obtaining bearer tokens from the /v1/auth/token endpoint",
        "scheme": "basic"
      },
      "ApiClient": {
        "type": "oauth2",
        "description": "Jamf Pro API Roles and Clients provide a client ID and secret for obtaining access tokens using the OAuth2 client_credentials grant type",
        "flows": {
          "clientCredentials": {
            "tokenUrl": "/api/v1/oauth/token",
            "scopes": {}
          }
        }
      }
    }
  },
  "x-si-base": "swagger.json",
  "x-github-repo": "jamf/Jamf-Pro-API-Schema",
  "x-github-sha": "5f8b85a61ce288205f7b44d478a117fb1acea0c6"
}
```