این API برای ویرایش دستهای از داکیومنتها (رکورد) ارسال میشود. مشابه «ارسال دستهای» فیلد کلید یکتا باید در همه داکیومنتها باید وجود داشتهباشد. مثلاً اگر فیلد کلید شما id است، حتما باید در تمامی داکیومنتها حضور داشته باشد. همچنین نام فیلد به حروف بزرگ و کوچک حساس میباشد:
[ { "id":"a-unique-identifier" ... }, { "id":"a-unique-identifier" ... } ]
این API به صورت غیرهمزمان پیادهسازی شده و دریافت نتیجه اجرای آن به کمک trackId که در خروجی ارسال میشود و از طریق فراخوانی API دیگری با نام «نتیجه عملیات دستهای»، امکانپذیر میباشد. نکته مهم در استفاده از این API این است که برای آپدیت اطلاعات لازم نیست که داکیومنت به صورت کامل ارسال شود، ارسال فیلدهای تغییر کرده نیز کفایت میکند.
ردیف | پارامتر | مقدار پیشفرض | توضیحات | ضروری | نوع |
۱ | catalogId | ندارد | شناسه اختصاصی کاتالوگ مورد نظر. پیش از فراخوانی این API باید حداقل یک کاتالوگ ایجاد کرده باشید. شناسه کاتالوگ مورد نظر را میتوانید در قسمت مدیریت کاتالوگها و با انتخاب کاتالوگ مورد نظر، از بخش تنظیمات پایه و شناسه اختصاصی کاتالوگ پیدا کنید. | بله | string |
۲ | محتوای درخواست | ندارد | این فیلد آرایهای از داکیومنتهای مورد نظر برای ویرایش در قالب JSON میباشد که تمامی داکیومنتها باید حتما شامل فیلد کلید یکتای دادهها در قالب رشته باشد. فیلد یکتا باید پیش از فراخوانی API در بخش آبی رنگ پنل، قسمت انتقال داده و بخش تنظیمات RESTful تعریف شده باشد. | بله | آرایهای از json |
curl -X PUT "{BASE_URL}/ingestionapi/api/v{version}/data/catalogs/{catalogId}/batch" --header 'Content-Type: application/json' \ --data-raw ' [ { "id": "17", "name": "Sunglass", "price": 9200 }, { "id": "18", "name": "Backpack", "price": 40900 } ]'Shell
در صورت ارسال موفقیتآمیز اطلاعات، شناسهای (trackId) برای اطلاع از نتیجه اجرای درخواست بازگردانده میشود که از این شناسه در فراخوانی API مربوط به دریافت «نتیجه عملیات دستهای» استفاده خواهد شد.
{ "trackId": "fc442947-318c-44b4-9aa2-f8f672c6b1ea" }JSON
ردیف | کد خطا | توضیحات |
۱ | ۴۰۰ | در صورتی که ساختار هر یک از مقادیر به صورت اشتباه به API فرستاده شده باشد. |
۲ | ۴۰۴ | در صورتی که شناسه کاتالوگ صحیح نباشد. |