{"command":{"effect":"write","timeoutSeconds":30,"inputSchema":{"type":"object","description":"**This endpoint allows a CSV upload containing up to one million contacts or 5GB of data, whichever is smaller. At least one identifier is required for a successful import.**\n\nImports take place asynchronously: the endpoint returns a URL (`upload_uri`) and HTTP headers (`upload_headers`) which can subsequently be used to `PUT` a file of contacts to be imported into our system.\n\nUploaded CSV files may also be [gzip-compressed](https://en.wikipedia.org/wiki/Gzip).\n\nIn either case, you must include the field `file_type` with the value `csv` in your request body.\n\nThe `field_mappings` parameter is a respective list of field definition IDs to map the uploaded CSV columns to. It allows you to use CSVs where one or more columns are skipped (`null`) or remapped to the contact field.\n\nFor example, if `field_mappings` is set to `[null, \"w1\", \"_rf1\"]`, this means skip column 0, map column 1 to the custom field with the ID `w1`, and map column 2 to the reserved field with the ID `_rf1`. See the \"Get All Field Definitions\" endpoint to fetch your custom and reserved field IDs to use with `field_mappings`.\n\nOnce you receive the response body you can then initiate a **second** API call where you use the supplied URL and HTTP header to upload your file. For example:\n\n`curl --upload-file \"file/path.csv\" \"URL_GIVEN\" -H \"HEADER_GIVEN\"`\n\nIf you would like to monitor the status of your import job, use the `job_id` and the \"Import Contacts Status\" endpoint.\n\nTwilio SendGrid recommends exporting your contacts regularly as a backup to avoid issues or lost data.\n","properties":{"body":{"type":"object","properties":{"list_ids":{"type":"array","description":"All contacts will be added to each of the specified lists.","items":{"type":"string"}},"file_type":{"allOf":[{"$ref":"#/definitions/FileType1"},{"type":"string"}]},"field_mappings":{"type":"array","description":"Import file header to reserved/custom field mapping.","uniqueItems":false,"minItems":1,"items":{"type":["string","null"]}}},"required":["file_type","field_mappings"]}},"required":[],"additionalProperties":false,"definitions":{"FileType1":{"type":"string","enum":["csv"]}}},"name":"Import Contacts","id":"sendgrid.mc_contacts.importcontact","example":{},"maxRequests":1,"summary":false}}