{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Topsort Documentation","colors":{"primary":"#0074F7","light":"#8280ff","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/topsort/FdGgIIxdnNXimeCi/assets/logo-light.svg?fit=max\u0026auto=format\u0026n=FdGgIIxdnNXimeCi\u0026q=85\u0026s=52335392d5233f0542050e8af5c24ef4","dark":"https://mintcdn.com/topsort/FdGgIIxdnNXimeCi/assets/logo-dark.svg?fit=max\u0026auto=format\u0026n=FdGgIIxdnNXimeCi\u0026q=85\u0026s=075f4c9f1ab9d40efecad5a644f360c0"},"favicon":"https://mintcdn.com/topsort/FdGgIIxdnNXimeCi/assets/favicon.png?fit=max\u0026auto=format\u0026n=FdGgIIxdnNXimeCi\u0026q=85\u0026s=ce9becb0a815ae7e2538a5f52f46517d","fonts":{"heading":{"family":"Circular","weight":700,"source":"fonts/CircularStd-Bold.woff2","format":"woff2"},"body":{"family":"Inter"}},"integrations":{"posthog":{"apiKey":"phc_xhC57kj0jUKFieH7EO1GEKaUQixVcPXguqJN4ep6UoQ","apiHost":"https://us.i.posthog.com","sessionRecording":true}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"metadata":{"timestamp":false},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":"en/api-reference/introduction"},{"language":"es","href":"es/api-reference/introduction"},{"language":"pt","href":"pt/api-reference/introduction"},{"language":"fr","href":"fr/api-reference/introduction"},{"language":"de","href":"de/api-reference/introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"topsort","hasAudioNarration":false,"actualSubdomain":"topsort","customDomains":["docs.topsort.com"],"gitSource":{"type":"github","owner":"topsort","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"issues":false,"edits":false,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af5d9d4b0ae2d0cef7a1d0f","clientVersion":"0.0.4111","searchFilterCounts":[{"language":"en","tag":"API Reference","count":186},{"language":"de","tag":"API-Referenz","count":184},{"language":"es","tag":"Referencia de API","count":184},{"language":"fr","tag":"Référence API","count":184},{"language":"pt","tag":"Referência da API","count":184},{"language":"en","tag":"Changelog","count":161},{"language":"de","tag":"Wissensdatenbank","count":131},{"language":"de","tag":"Dokumentation","count":131},{"language":"en","tag":"Knowledge Base","count":131},{"language":"en","tag":"Documentation","count":131},{"language":"es","tag":"Base de Conocimientos","count":131},{"language":"es","tag":"Documentación","count":131},{"language":"fr","tag":"Base de connaissances","count":131},{"language":"fr","tag":"Documentation","count":131},{"language":"pt","tag":"Base de Conhecimento","count":131},{"language":"pt","tag":"Documentação","count":131},{"language":"de","tag":"Werbeplattform","count":81},{"language":"en","tag":"Ad Platform","count":81},{"language":"es","tag":"Plataforma de Anuncios","count":81},{"language":"fr","tag":"Plateforme Publicitaire","count":81},{"language":"pt","tag":"Plataforma de Anúncios","count":81},{"language":"en","tag":"2026","count":60},{"language":"en","tag":"2025","count":54},{"language":"en","tag":"Integration Guide","count":46},{"language":"de","tag":"Integrationshandbuch","count":44},{"language":"es","tag":"Guía de Integración","count":44},{"language":"fr","tag":"Guide d'Intégration","count":44},{"language":"pt","tag":"Guia de Integração","count":44},{"language":"de","tag":"Campaign API","count":41},{"language":"en","tag":"Campaign API","count":41},{"language":"es","tag":"Campaign API","count":41},{"language":"fr","tag":"Campaign API","count":41},{"language":"pt","tag":"Campaign API","count":41},{"language":"en","tag":"Ad Server","count":39},{"language":"de","tag":"Werbeserver","count":37},{"language":"es","tag":"Servidor de Anuncios","count":37},{"language":"fr","tag":"Serveur Publicitaire","count":37},{"language":"pt","tag":"Servidor de Anúncios","count":37},{"language":"de","tag":"Changelog","count":30},{"language":"de","tag":"2026","count":30},{"language":"es","tag":"Registro de Cambios","count":30},{"language":"es","tag":"2026","count":30},{"language":"fr","tag":"Journal des modifications","count":30},{"language":"fr","tag":"2026","count":30},{"language":"pt","tag":"Registro de alterações","count":30},{"language":"pt","tag":"2026","count":30},{"language":"de","tag":"Übersicht","count":16},{"language":"es","tag":"Offsite Ads API","count":16},{"language":"fr","tag":"Aperçu","count":16},{"language":"pt","tag":"Visão Geral","count":16}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/topsort/413870ea9024fcb4/style.css"},{"filePath":"styles/base.css","content":"body{opacity:0;transition:opacity 0.2s ease-in}body.loaded{opacity:1}@font-face{font-family:Circular;font-style:normal;font-weight:bold;font-display:swap;src:url(\"/fonts/CircularStd-Bold.woff2\") format(\"woff2\")}@font-face{font-family:Circular;font-style:italic;font-weight:bold;font-display:swap;src:url(\"/fonts/CircularStd-BoldItalic.woff2\") format(\"woff2\")}h1,h2,h3,h4,h5,h6{font-family:Circular, ui-sans-serif, sans-serif}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}"},{"filePath":"styles/changelog.css","content":"body[data-page=\"/en/changelog\"] #sidebar,body[data-page=\"/en/changelog/\"] #sidebar{display:none!important}body[data-page=\"/en/changelog\"] main,body[data-page=\"/en/changelog/\"] main{margin-left:0!important;max-width:100%!important}body[data-page=\"/en/changelog\"] [class*=\"TableOfContents\"],body[data-page=\"/en/changelog/\"] [class*=\"TableOfContents\"]{display:none!important}[data-theme=\"dark\"] img[src$=\".svg\"]{filter:invert(1) hue-rotate(180deg)}[data-theme=\"dark\"] img[src*=\"logo\"],[data-theme=\"dark\"] img[src*=\"icon\"]{filter:none}img{transition:filter 0.3s ease}article hr,main hr{border:none;height:4px;background:linear-gradient(\n\t\tto right,\n\t\ttransparent,\n\t\t#00ff88 20%,\n\t\t#00d4ff 40%,\n\t\t#8280ff 60%,\n\t\t#ff6b9d 80%,\n\t\ttransparent\n\t);margin:3rem 0;opacity:0.7;border-radius:2px}[data-theme=\"dark\"] article hr,[data-theme=\"dark\"] main hr{opacity:0.9}.last-updated-component{background-color:rgba(0, 0, 0, 0.05);border:1px solid rgba(0, 0, 0, 0.12);color:rgba(0, 0, 0, 0.75)}.last-updated-component svg{stroke:currentColor}.dark .last-updated-component{background-color:#3a3a3a!important;border:2px solid #888888!important;color:#ffffff!important}.dark .last-updated-component svg{stroke:#ffffff!important;opacity:1!important}.dark .last-updated-component strong,.dark .last-updated-component time{color:#ffffff!important}#navigation-items a[href*=\"/changelog/\"]{font-size:0.55rem!important;line-height:1.2!important;padding-top:0.25rem!important;padding-bottom:0.25rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important}#navigation-items a[href*=\"/changelog/\"]+a[href*=\"/changelog/\"]{margin-top:-2px!important}#navigation-items ul{transition:max-height 0.2s ease-out,\n\t\topacity 0.2s ease-out;overflow:hidden}#navigation-items button[aria-expanded]{transition:background-color 0.15s ease}#navigation-items button[aria-expanded]:hover{background-color:rgba(99, 102, 241, 0.1)}"},{"filePath":"styles/feedback.css","content":"#feedback-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:rgba(255, 255, 255, 0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0, 0, 0, 0.1);border-radius:12px;padding:12px 20px;box-shadow:0 2px 8px rgba(0, 0, 0, 0.08);display:flex;align-items:center;gap:14px;z-index:9999;opacity:0;transition:all 0.4s cubic-bezier(0.16, 1, 0.3, 1);pointer-events:none}#feedback-toast.visible{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}.dark #feedback-toast{background:rgba(31, 41, 55, 0.9);border-color:rgba(255, 255, 255, 0.15);box-shadow:0 2px 8px rgba(0, 0, 0, 0.2)}#feedback-toast .toast-text{color:#374151;font-size:14px;font-weight:500}.dark #feedback-toast .toast-text{color:#e5e7eb}#feedback-toast .toast-submit-btn{background:#0074f7;color:white;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.2s ease}#feedback-toast .toast-submit-btn:hover{background:#01193a}.dark #feedback-toast .toast-submit-btn{background:#8280ff}.dark #feedback-toast .toast-submit-btn:hover{background:#6e6ce6}#feedback-toast .toast-close-btn{background:rgba(0, 0, 0, 0.05);border:none;color:#6b7280;cursor:pointer;font-size:18px;padding:4px 8px;line-height:1;border-radius:6px;transition:all 0.2s ease}#feedback-toast .toast-close-btn:hover{background:rgba(0, 0, 0, 0.1);color:#374151}.dark #feedback-toast .toast-close-btn{background:rgba(255, 255, 255, 0.05);color:#9ca3af}.dark #feedback-toast .toast-close-btn:hover{background:rgba(255, 255, 255, 0.1);color:#e5e7eb}#feedback-dialog{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.3);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;pointer-events:none;transition:opacity 0.3s ease}#feedback-dialog.visible{opacity:1;pointer-events:auto}.dark #feedback-dialog{background:rgba(0, 0, 0, 0.5)}.feedback-dialog-content{background:rgba(255, 255, 255, 0.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0, 0, 0, 0.1);border-radius:16px;padding:28px;max-width:520px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 16px rgba(0, 0, 0, 0.1);transform:scale(0.95) translateY(10px);transition:all 0.4s cubic-bezier(0.16, 1, 0.3, 1)}#feedback-dialog.visible .feedback-dialog-content{transform:scale(1) translateY(0)}.dark .feedback-dialog-content{background:rgba(31, 41, 55, 0.95);border-color:rgba(255, 255, 255, 0.1);box-shadow:0 4px 16px rgba(0, 0, 0, 0.3)}.feedback-dialog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.feedback-dialog-header h2{margin:0;font-size:22px;font-weight:600;color:#111827;letter-spacing:-0.02em}.dark .feedback-dialog-header h2{color:#f9fafb}.dialog-close-btn{background:rgba(0, 0, 0, 0.05);border:none;font-size:20px;color:#6b7280;cursor:pointer;padding:0;width:36px;height:36px;line-height:36px;border-radius:10px;transition:all 0.2s ease}.dialog-close-btn:hover{background:rgba(0, 0, 0, 0.1);color:#374151}.dark .dialog-close-btn{background:rgba(255, 255, 255, 0.05)}.dark .dialog-close-btn:hover{background:rgba(255, 255, 255, 0.1);color:#e5e7eb}.feedback-page-context{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(0, 0, 0, 0.03);border-radius:8px;margin-bottom:20px;font-size:13px;color:#6b7280}.feedback-page-context svg{flex-shrink:0;opacity:0.6}.feedback-page-context .page-context-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.dark .feedback-page-context{background:rgba(255, 255, 255, 0.05);color:#9ca3af}.selected-text-preview{display:none;background:rgba(0, 116, 247, 0.04);border-left:3px solid #0074f7;padding:14px 18px;margin-bottom:24px;border-radius:0 12px 12px 0}.dark .selected-text-preview{background:rgba(130, 128, 255, 0.1);border-left-color:#8280ff}.selected-text-preview .preview-label{margin:0 0 8px 0;font-size:11px;color:#0074f7;font-weight:600;text-transform:uppercase;letter-spacing:0.08em}.dark .selected-text-preview .preview-label{color:#a5a3ff}.selected-text-preview .selected-text-content{margin:0;font-size:14px;color:#374151;font-style:italic;max-height:100px;overflow-y:auto;line-height:1.6}.dark .selected-text-preview .selected-text-content{color:#d1d5db}#feedback-form .form-group{margin-bottom:22px}#feedback-form label{display:block;margin-bottom:10px;font-size:13px;font-weight:600;color:#374151;letter-spacing:0.01em}.dark #feedback-form label{color:#d1d5db}#feedback-form textarea,#feedback-form input[type=\"email\"]{width:100%;padding:14px 16px;border:1px solid rgba(0, 0, 0, 0.1);border-radius:12px;font-size:14px;font-family:inherit;box-sizing:border-box;background:rgba(255, 255, 255, 0.6);color:#111827;transition:all 0.2s ease}.dark #feedback-form textarea,.dark #feedback-form input[type=\"email\"]{background:rgba(55, 65, 81, 0.5);border-color:rgba(255, 255, 255, 0.1);color:#f3f4f6}#feedback-form textarea{min-height:130px;resize:vertical;line-height:1.6}#feedback-form textarea:focus,#feedback-form input[type=\"email\"]:focus{outline:none;border-color:#0074f7;background:rgba(255, 255, 255, 0.95)}.dark #feedback-form textarea:focus,.dark #feedback-form input[type=\"email\"]:focus{background:rgba(55, 65, 81, 0.8);border-color:#8280ff}#feedback-form textarea::placeholder,#feedback-form input[type=\"email\"]::placeholder{color:#9ca3af}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:28px}.btn-cancel{padding:12px 22px;border:1px solid rgba(0, 0, 0, 0.1);background:rgba(255, 255, 255, 0.5);border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;color:#374151;transition:all 0.2s ease}.btn-cancel:hover{background:rgba(255, 255, 255, 0.8);border-color:rgba(0, 0, 0, 0.15)}.dark .btn-cancel{background:rgba(55, 65, 81, 0.5);border-color:rgba(255, 255, 255, 0.1);color:#d1d5db}.dark .btn-cancel:hover{background:rgba(55, 65, 81, 0.8)}.btn-submit{padding:10px 20px;border:none;background:#0074f7;color:white;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s ease}.btn-submit:hover{background:#01193a}.dark .btn-submit{background:#8280ff}.dark .btn-submit:hover{background:#6e6ce6}.btn-submit:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.form-status{margin-top:16px;padding:12px 16px;border-radius:10px;display:none;font-size:13px;font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.form-status.success{background:rgba(16, 185, 129, 0.12);color:#059669;border:1px solid rgba(16, 185, 129, 0.25)}.dark .form-status.success{background:rgba(16, 185, 129, 0.18);color:#6ee7b7;border-color:rgba(16, 185, 129, 0.35)}.form-status.error{background:rgba(239, 68, 68, 0.12);color:#dc2626;border:1px solid rgba(239, 68, 68, 0.25)}.dark .form-status.error{background:rgba(239, 68, 68, 0.18);color:#fca5a5;border-color:rgba(239, 68, 68, 0.35)}"},{"filePath":"styles/goodies.css","content":".goodies-container{position:fixed;bottom:24px;left:24px;z-index:9998;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.goodies-trigger{background:#0074f7;color:white;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 2px rgba(0, 0, 0, 0.1);transition:all 0.2s ease;position:relative;padding:0}.goodies-trigger:hover{background:#01193a}.goodies-trigger:active{transform:scale(0.95)}.dark .goodies-trigger{background:#8280ff;box-shadow:0 1px 3px rgba(0, 0, 0, 0.2)}.dark .goodies-trigger:hover{background:#6e6ce6}.goodies-trigger .goodies-icon-heart,.goodies-trigger .goodies-icon-close{position:absolute;top:50%;left:50%;transform-origin:center;transition:all 0.3s cubic-bezier(0.16, 1, 0.3, 1)}.goodies-trigger .goodies-icon-heart{opacity:1;transform:translate(-50%, -50%) scale(1) rotate(0deg)}.goodies-trigger .goodies-icon-close{opacity:0;transform:translate(-50%, -50%) scale(0.5) rotate(-90deg)}.goodies-container.open .goodies-trigger .goodies-icon-heart{opacity:0;transform:translate(-50%, -50%) scale(0.5) rotate(90deg)}.goodies-container.open .goodies-trigger .goodies-icon-close{opacity:1;transform:translate(-50%, -50%) scale(1) rotate(0deg)}.goodies-menu{display:flex;flex-direction:column;gap:8px;opacity:0;transform:translateY(10px) scale(0.95);pointer-events:none;transition:all 0.3s cubic-bezier(0.16, 1, 0.3, 1)}.goodies-container.open .goodies-menu{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.goodies-menu-item{display:flex;align-items:center;gap:10px;padding:12px 16px;background:rgba(255, 255, 255, 0.95);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0, 0, 0, 0.08);border-radius:12px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px rgba(0, 0, 0, 0.08);transition:all 0.2s ease;text-decoration:none}.goodies-menu-item:hover{background:rgba(255, 255, 255, 1);transform:translateX(4px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.1)}.goodies-menu-item svg{color:#0074f7;flex-shrink:0}.dark .goodies-menu-item{background:rgba(31, 41, 55, 0.95);border-color:rgba(255, 255, 255, 0.1);color:#e5e7eb;box-shadow:0 2px 8px rgba(0, 0, 0, 0.2)}.dark .goodies-menu-item:hover{background:rgba(55, 65, 81, 0.98);box-shadow:0 4px 12px rgba(0, 0, 0, 0.3)}.dark .goodies-menu-item svg{color:#8280ff}@media (max-width: 640px){#feedback-toast{top:72px;bottom:auto;left:16px;right:16px;transform:translateX(0) translateY(-100px);width:auto;border-radius:14px;padding:12px 18px}#feedback-toast.visible{transform:translateX(0) translateY(0)}.feedback-dialog-content{padding:24px;margin:16px;width:calc(100% - 32px);border-radius:20px}.goodies-container{top:76px;bottom:auto;right:16px;left:auto;align-items:flex-end}.goodies-container{flex-direction:column-reverse}.goodies-menu{transform:translateY(-10px) scale(0.95)}.goodies-container.open .goodies-menu{transform:translateY(0) scale(1)}.goodies-trigger{width:30px;height:30px;border-radius:50%}.goodies-trigger svg{width:14px;height:16px}.goodies-menu-item{padding:10px 14px;font-size:13px}.form-actions{flex-direction:column}.btn-cancel,.btn-submit{width:100%;justify-content:center}.form-status{font-size:11px;padding:10px 14px;margin-top:12px;white-space:normal;line-height:1.4;text-align:center}}button[type=\"submit\"][class*=\"bg-primary\"],button[aria-label*=\"submit\"][class*=\"bg-primary\"],form button[class*=\"rounded-full\"][class*=\"bg-\"],[data-testid=\"chat-input\"] button,.chat-input button[type=\"submit\"],button[class*=\"bg-primary\"][class*=\"rounded-full\"]{background:#0074f7!important}button[type=\"submit\"][class*=\"bg-primary\"]:hover,button[aria-label*=\"submit\"][class*=\"bg-primary\"]:hover,form button[class*=\"rounded-full\"][class*=\"bg-\"]:hover,[data-testid=\"chat-input\"] button:hover,.chat-input button[type=\"submit\"]:hover,button[class*=\"bg-primary\"][class*=\"rounded-full\"]:hover{background:#01193a!important}.dark button[type=\"submit\"][class*=\"bg-primary\"],.dark button[aria-label*=\"submit\"][class*=\"bg-primary\"],.dark form button[class*=\"rounded-full\"][class*=\"bg-\"],.dark [data-testid=\"chat-input\"] button,.dark .chat-input button[type=\"submit\"],.dark button[class*=\"bg-primary\"][class*=\"rounded-full\"]{background:#8280ff!important}.dark button[type=\"submit\"][class*=\"bg-primary\"]:hover,.dark button[aria-label*=\"submit\"][class*=\"bg-primary\"]:hover,.dark form button[class*=\"rounded-full\"][class*=\"bg-\"]:hover,.dark [data-testid=\"chat-input\"] button:hover,.dark .chat-input button[type=\"submit\"]:hover,.dark button[class*=\"bg-primary\"][class*=\"rounded-full\"]:hover{background:#6e6ce6!important}"},{"filePath":"styles/homepage.css","content":"body[data-page=\"/\"] #header,body[data-page=\"\"] #header{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}body[data-page=\"/\"] .hero-gradient,body[data-page=\"\"] .hero-gradient{padding-top:2rem!important;padding-bottom:2rem!important;position:relative;z-index:2}@media (min-width: 768px){body[data-page=\"/\"] .hero-gradient,body[data-page=\"\"] .hero-gradient{padding-top:3rem!important;padding-bottom:3rem!important}}@media (min-width: 1024px){body[data-page=\"/\"] .hero-gradient,body[data-page=\"\"] .hero-gradient{padding-top:5rem!important;padding-bottom:5rem!important}}body[data-page=\"/\"] .hero-gradient h1,body[data-page=\"\"] .hero-gradient h1,body[data-page=\"/\"] .hero-gradient h1 *,body[data-page=\"\"] .hero-gradient h1 *,body[data-page=\"/\"] .hero-gradient div h1,body[data-page=\"\"] .hero-gradient div h1{text-align:center!important;width:100%!important}body[data-page=\"/\"] .hero-gradient p,body[data-page=\"\"] .hero-gradient p,body[data-page=\"/\"] .hero-gradient div p,body[data-page=\"\"] .hero-gradient div p{text-align:center!important;width:100%!important}body[data-page=\"/\"] .hero-gradient h1 a,body[data-page=\"\"] .hero-gradient h1 a,body[data-page=\"/\"] .hero-gradient h1 a img,body[data-page=\"\"] .hero-gradient h1 a img{display:none!important}body[data-page=\"/\"] .hero-gradient h1,body[data-page=\"\"] .hero-gradient h1{margin-bottom:1rem!important}body[data-page=\"/\"] .hero-gradient p,body[data-page=\"\"] .hero-gradient p{margin-bottom:2rem!important}@media (min-width: 1280px){body[data-page=\"/\"] .hero-gradient h1,body[data-page=\"\"] .hero-gradient h1,body[data-page=\"/\"] .hero-gradient h1 *,body[data-page=\"\"] .hero-gradient h1 *,body[data-page=\"/\"] .hero-gradient div h1,body[data-page=\"\"] .hero-gradient div h1{text-align:center!important}body[data-page=\"/\"] .hero-gradient p,body[data-page=\"\"] .hero-gradient p,body[data-page=\"/\"] .hero-gradient div p,body[data-page=\"\"] .hero-gradient div p{text-align:center!important;width:fit-content!important;position:relative!important;left:50%!important;transform:translateX(-50%)!important;white-space:nowrap!important}}body[data-page=\"/\"] #toppie-container,body[data-page=\"\"] #toppie-container{max-width:280px!important;width:100%!important;margin-bottom:1.5rem;position:relative;z-index:2}@media (min-width: 640px){body[data-page=\"/\"] #toppie-container,body[data-page=\"\"] #toppie-container{max-width:320px!important}}@media (min-width: 768px){body[data-page=\"/\"] #toppie-container,body[data-page=\"\"] #toppie-container{max-width:350px!important;margin-bottom:2rem}}@media (min-width: 1280px){body[data-page=\"/\"] #toppie-container,body[data-page=\"\"] #toppie-container{max-width:320px!important;margin-bottom:0}}body[data-page=\"/\"] main h2,body[data-page=\"\"] main h2,body[data-page=\"/\"] article h2,body[data-page=\"\"] article h2,body[data-page=\"/\"] .mdx-content>h2,body[data-page=\"\"] .mdx-content>h2,body[data-page=\"/\"] main h2 *,body[data-page=\"\"] main h2 *,body[data-page=\"/\"] article h2 *,body[data-page=\"\"] article h2 *,body[data-page=\"/\"] .mdx-content>h2 *,body[data-page=\"\"] .mdx-content>h2 *,body[data-page=\"/\"] h2.text-center,body[data-page=\"\"] h2.text-center{text-align:center!important;margin-left:auto!important;margin-right:auto!important}body[data-page=\"/\"] .mdx-content>p,body[data-page=\"\"] .mdx-content>p,body[data-page=\"/\"] .mdx-content p:not([class]),body[data-page=\"\"] .mdx-content p:not([class]),body[data-page=\"/\"] .prose>p,body[data-page=\"\"] .prose>p,body[data-page=\"/\"] .mdx-content>div>p,body[data-page=\"\"] .mdx-content>div>p{text-align:center!important;margin-left:auto!important;margin-right:auto!important}body[data-page=\"/\"] a[href*=\"bannersjs\"] *,body[data-page=\"\"] a[href*=\"bannersjs\"] *{text-align:left!important;hyphens:none!important;text-justify:none!important}body[data-page=\"/\"] main h2 a[href^=\"#\"],body[data-page=\"\"] main h2 a[href^=\"#\"],body[data-page=\"/\"] article h2 a[href^=\"#\"],body[data-page=\"\"] article h2 a[href^=\"#\"],body[data-page=\"/\"] .mdx-content>h2 a[href^=\"#\"],body[data-page=\"\"] .mdx-content>h2 a[href^=\"#\"],body[data-page=\"/\"] main h2 a img,body[data-page=\"\"] main h2 a img,body[data-page=\"/\"] .mdx-content>h2 a img,body[data-page=\"\"] .mdx-content>h2 a img,body[data-page=\"/\"] article h2 a img,body[data-page=\"\"] article h2 a img{display:none!important}body[data-page=\"/\"] main>h2,body[data-page=\"\"] main>h2{margin-top:4rem!important;margin-bottom:2rem!important}@media (min-width: 768px){body[data-page=\"/\"] main>h2,body[data-page=\"\"] main>h2{margin-top:5rem!important;margin-bottom:2.5rem!important}}body[data-page=\"/\"] #sidebar,body[data-page=\"\"] #sidebar{display:none!important}body[data-page=\"/\"] main,body[data-page=\"\"] main{margin-left:0!important;max-width:100%!important;position:relative;z-index:2}body[data-page=\"/\"] .mdx-content,body[data-page=\"\"] .mdx-content{max-width:900px!important;margin-left:auto!important;margin-right:auto!important;position:relative;z-index:2}body[data-page=\"/\"] [class*=\"TableOfContents\"],body[data-page=\"\"] [class*=\"TableOfContents\"]{display:none!important}body[data-page=\"/\"] #page-context-menu-button,body[data-page=\"\"] #page-context-menu-button,body[data-page=\"/\"] button[aria-label=\"Copy page\"],body[data-page=\"\"] button[aria-label=\"Copy page\"],body[data-page=\"/\"] button[aria-label=\"More actions\"],body[data-page=\"\"] button[aria-label=\"More actions\"]{display:none!important}#bg-video{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;object-fit:cover!important;z-index:-1!important;opacity:0.2!important;pointer-events:none!important}.persistent-bg-video{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;object-fit:cover!important;object-position:center top!important;z-index:-1!important;pointer-events:none!important}body[data-page=\"/\"] #bg-video,body[data-page=\"\"] #bg-video{display:none!important}body[data-page=\"/\"] .nav-tabs-item,body[data-page=\"\"] .nav-tabs-item{color:rgb(107, 114, 128)!important;text-shadow:none!important}body[data-page=\"/\"] .nav-tabs-item>div.absolute,body[data-page=\"\"] .nav-tabs-item>div.absolute,body[data-page=\"/\"] .nav-tabs-item>.bg-primary,body[data-page=\"\"] .nav-tabs-item>.bg-primary{display:none!important}body[data-page=\"/\"] .nav-tabs-item:hover,body[data-page=\"\"] .nav-tabs-item:hover{color:rgb(55, 65, 81)!important}.dark body[data-page=\"/\"] .nav-tabs-item,.dark body[data-page=\"\"] .nav-tabs-item,body.dark[data-page=\"/\"] .nav-tabs-item,body.dark[data-page=\"\"] .nav-tabs-item{color:rgb(156, 163, 175)!important}.dark body[data-page=\"/\"] .nav-tabs-item:hover,.dark body[data-page=\"\"] .nav-tabs-item:hover,body.dark[data-page=\"/\"] .nav-tabs-item:hover,body.dark[data-page=\"\"] .nav-tabs-item:hover{color:rgb(209, 213, 219)!important}.whats-new-banner{display:inline-flex;align-items:center;gap:8px;margin:0 auto 32px auto;padding:6px 14px 6px 6px;background:rgba(255, 255, 255, 0.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(0, 0, 0, 0.06);border-radius:9999px;text-decoration:none;transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);font-size:13px;box-shadow:0 1px 3px rgba(0, 0, 0, 0.03)}.whats-new-banner:hover{background:rgba(255, 255, 255, 0.8);border-color:rgba(0, 0, 0, 0.1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0, 0, 0, 0.06)}.dark .whats-new-banner,body.dark .whats-new-banner{background:rgba(255, 255, 255, 0.04);border-color:rgba(255, 255, 255, 0.08);box-shadow:0 1px 3px rgba(0, 0, 0, 0.3)}.dark .whats-new-banner:hover,body.dark .whats-new-banner:hover{background:rgba(255, 255, 255, 0.08);border-color:rgba(255, 255, 255, 0.12);box-shadow:0 4px 12px rgba(0, 0, 0, 0.4)}.whats-new-badge{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;background:linear-gradient(135deg, #10b981 0%, #059669 100%);color:white;font-size:10px;font-weight:700;letter-spacing:0.06em;border-radius:9999px;text-transform:uppercase;box-shadow:0 1px 2px rgba(16, 185, 129, 0.3)}.whats-new-text{color:#1f2937;font-weight:500;letter-spacing:-0.01em}.dark .whats-new-text,body.dark .whats-new-text{color:#f3f4f6}.whats-new-arrow{color:#9ca3af;font-size:14px;transition:transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);opacity:0.7}.whats-new-banner:hover .whats-new-arrow{transform:translateX(2px);opacity:1}.dark .whats-new-arrow,body.dark .whats-new-arrow{color:#9ca3af}body[data-page=\"/\"] .whats-new-banner,body[data-page=\"\"] .whats-new-banner{display:flex;width:fit-content}@media (max-width: 640px){.whats-new-banner{padding:5px 12px 5px 5px;gap:6px;font-size:12px;margin-bottom:24px}.whats-new-badge{padding:2px 7px;font-size:9px}.whats-new-text{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whats-new-arrow{font-size:12px}}.hero-mascot-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:0;overflow:hidden}.hero-mascot-overlay .hero-mascot-light,.hero-mascot-overlay .hero-mascot-dark{width:100%;height:100%;object-fit:cover;object-position:center top;transition:all 0.5s ease}.hero-mascot-overlay .hero-mascot-light{display:block;opacity:0.06}.hero-mascot-overlay .hero-mascot-dark{display:none}.dark .hero-mascot-overlay .hero-mascot-light,body.dark .hero-mascot-overlay .hero-mascot-light{display:none}.dark .hero-mascot-overlay .hero-mascot-dark,body.dark .hero-mascot-overlay .hero-mascot-dark{display:block;opacity:0.4;filter:drop-shadow(0 0 100px rgba(59, 130, 246, 0.6))\n\t\tdrop-shadow(0 0 200px rgba(139, 92, 246, 0.4))\n\t\tdrop-shadow(0 0 300px rgba(59, 130, 246, 0.3))}.dark .hero-mascot-overlay::before,body.dark .hero-mascot-overlay::before{content:\"\";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:150%;height:150%;background:radial-gradient(\n\t\tellipse at center,\n\t\trgba(59, 130, 246, 0.2) 0%,\n\t\trgba(139, 92, 246, 0.1) 25%,\n\t\trgba(59, 130, 246, 0.05) 40%,\n\t\ttransparent 60%\n\t);z-index:-1;animation:pulseGlow 8s ease-in-out infinite}@keyframes pulseGlow{0%,100%{opacity:1;transform:translate(-50%, -50%) scale(1)}50%{opacity:0.7;transform:translate(-50%, -50%) scale(1.05)}}@media (max-width: 640px){.hero-mascot-overlay .hero-mascot-light{opacity:0.05}.dark .hero-mascot-overlay .hero-mascot-dark,body.dark .hero-mascot-overlay .hero-mascot-dark{opacity:0.3}.hero-mascot-overlay .hero-mascot-light,.hero-mascot-overlay .hero-mascot-dark{-webkit-mask-image:radial-gradient(\n\t\t\tellipse 80% 80% at center,\n\t\t\tblack 40%,\n\t\t\ttransparent 70%\n\t\t);mask-image:radial-gradient(\n\t\t\tellipse 80% 80% at center,\n\t\t\tblack 40%,\n\t\t\ttransparent 70%\n\t\t)}}.dark .hero-mascot-overlay::after,body.dark .hero-mascot-overlay::after{content:\"\";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0, 0, 0, 0.4);z-index:1;pointer-events:none}"},{"filePath":"styles/layout.css","content":"#navbar a[href=\"/\"] img,#navbar a[href=\"/\"] img{max-width:180px}@media (max-width: 1023px){#navbar button>div:last-child,#navbar button span,#navbar [aria-label=\"Open navigation\"]~div,#navbar [aria-label=\"Open navigation\"]~span,#navbar>div>div>button>div:not(:first-child),#navbar>.max-w-8xl button>div:not(:has(svg)):not(:first-child){display:none!important}#navbar button svg,#navbar button>div:first-child:has(svg){display:block!important}}#navbar>.max-w-8xl nav{display:none}@media screen and (min-width: 1024px){#navbar>.max-w-8xl nav{display:flex}}#navbar>.max-w-8xl>div>div>div>div{justify-content:end}#navbar>.max-w-8xl>div>div>div>div>.ml-auto{margin-left:0}#navbar>.max-w-8xl>div>div>div>div>.mx-px{width:25%;min-width:120px}#navbar>.max-w-8xl>div>div>div>div>div:first-child{margin-right:auto}#navigation-items h5{text-transform:uppercase;font-weight:normal;letter-spacing:0.05em;font-size:0.75rem;font-family:Inter, ui-sans-serif, sans-serif;color:rgb(134, 140, 152)}.no-hyphenate,.no-justify,.hero-gradient,.hero-gradient *,.hero-gradient h1,.hero-gradient p,.hero-gradient span,.hero-gradient div{hyphens:none!important;-webkit-hyphens:none!important;-moz-hyphens:none!important;-ms-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important;text-align:left!important;white-space:normal!important}.hero-gradient h1{word-break:keep-all!important;white-space:normal!important}@media (min-width: 768px) and (max-width: 1279px){.hero-gradient .flex-1{min-width:60%!important}}body[data-page=\"/\"] .hero-gradient *,body[data-page=\"\"] .hero-gradient *,body[data-page=\"/\"] .hero-gradient h1,body[data-page=\"\"] .hero-gradient h1,body[data-page=\"/\"] .hero-gradient p,body[data-page=\"\"] .hero-gradient p{text-align:left!important;hyphens:none!important;-webkit-hyphens:none!important;-moz-hyphens:none!important;-ms-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important;white-space:normal!important;text-justify:none!important}@media (min-width: 1280px){#toppie-container{max-width:320px!important;width:320px!important}}[class*=\"Card\"] p,[class*=\"card\"] p,pre,pre *,code,code *,table,table *,th,td{text-align:left!important;hyphens:none!important}"}],"page":{"pagePath":"en/api-reference/catalog-api/upsert-products","slug":"/en/api-reference/catalog-api/upsert-products","pageMetadata":{"title":"Upsert Products","description":"Upsert products.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/upsert-products","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upsert products.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Upsert Products","description":"Upsert products.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/upsert-products","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/topsort/09718a6f70d44fb9/script.js","/_mintlify/custom/topsort/1ba346cc160f50c6/scripts/changelog.js","/_mintlify/custom/topsort/c221a91f929cbe9b/scripts/feedback.js","/_mintlify/custom/topsort/33370d8ce5a05e5f/scripts/navigation.js","/_mintlify/custom/topsort/9cf111fe133b8824/scripts/posthog.js","/_mintlify/custom/topsort/94892506942e7b4b/scripts/text-justification.js","/_mintlify/custom/topsort/b4af3c4b8b4bddb8/scripts/video-background.js","/_mintlify/custom/topsort/46198aa544856623/scripts/vibrate-mode.js","/_mintlify/custom/topsort/d6941d8316377689/scripts/config/shared-config.js","/_mintlify/custom/topsort/26f120bf7d7a509e/scripts/core/constants.js","/_mintlify/custom/topsort/6e2a33614b4731db/scripts/core/events.js","/_mintlify/custom/topsort/ca947aeeddcda685/scripts/core/logger.js","/_mintlify/custom/topsort/65cfa18e15b22281/scripts/custom-branding.js","/_mintlify/custom/topsort/f1cb191933428051/scripts/goodies-menu.js","/_mintlify/custom/topsort/a7b559fc1810dccf/scripts/toppie.js"],"openApiReferenceData":{"operation":{"tags":["Catalog API"],"summary":"Upsert Products","description":"Upsert products.","operationId":"upsert_products","security":["ed030506-1176-48ce-b0dd-f19dcf4de9c9"],"requestBody":"949bb4c5-e3e4-4863-84e2-f95d286410ae","responses":{"204":"00071b33-af0f-4006-a85f-fcf892ff4b05","422":"e93271ed-c8e1-4b7d-8590-395ab1bea759"},"method":"put","type":"path","servers":["48a67a54-dba9-4109-9bdd-ad1aabca2ee1"],"path":"/public/v1/catalog-search-service/catalogs/products","baseUrlOptions":["https://api.topsort.com"],"title":"Upsert Products","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"products":{"items":{"properties":{"id":{"type":"string","maxLength":255,"minLength":1,"title":"Id","description":"Unique ID of the product. Topsort treats IDs as strings, choose any format as long as it is unique within the catalog.","examples":["eyGqR4YQgBJa","PROD-548","52c8c83c-2f4f-4873-87a0-1ccd88273b27"],"isRequired":true,"uniqueKey":"products.items.[INDEX].id","typeLabel":"string"},"name":{"type":"string","minLength":1,"title":"Name","description":"Name of the product. Shown in Topsort UI. Truncated to 150 characters.","examples":["Delirium Tremens Beer Bottle 330cc x6"],"isRequired":true,"uniqueKey":"products.items.[INDEX].name","typeLabel":"string"},"vendors":{"items":{"type":"string","maxLength":255,"minLength":1,"uniqueKey":"products.items.[INDEX].vendors.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Vendors","description":"IDs of the vendors that can promote this product in campaigns. Empty or whitespace-only entries are ignored.","examples":[["9SiwYqqL8vdG","BRAND-48795"]],"isRequired":true,"uniqueKey":"products.items.[INDEX].vendors","typeLabel":"string[]"},"categories":{"items":{"type":"string","maxLength":255,"minLength":1,"uniqueKey":"products.items.[INDEX].categories.items.[INDEX]","typeLabel":"string"},"type":"array","title":"Categories","description":"IDs of the categories this product belongs to. Empty or whitespace-only entries are ignored.","examples":[["ahEDqV5uhjj8"],["CAT-343","CAT-456"],["52c8c83c-2f4f-4873-87a0-1ccd88273b27"]],"isRequired":true,"uniqueKey":"products.items.[INDEX].categories","typeLabel":"string[]"},"description":{"oneOf":[{"type":"string","title":"Description","description":"Description of the product. Truncated to 5000 characters.","minLength":1,"example":"Named as \"Best Beer in the World\" in 2008 at the World Beer Championships in Chicago, Illinois.","uniqueKey":"products.items.[INDEX].description.oneOf.0","typeLabel":"string"},{"type":"null","title":"Description","description":"Description of the product. Truncated to 5000 characters.","example":"Named as \"Best Beer in the World\" in 2008 at the World Beer Championships in Chicago, Illinois.","uniqueKey":"products.items.[INDEX].description.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].description","typeLabel":"string | null"},"brand":{"oneOf":[{"type":"object","title":"Brand","description":"Brand information of the product.","required":["id","name"],"properties":{"id":{"type":"string","maxLength":255,"minLength":1,"title":"Id","description":"The brand ID.","examples":["es5086vyV"],"isRequired":true,"uniqueKey":"products.items.[INDEX].brand.oneOf.0.id","typeLabel":"string"},"name":{"type":"string","minLength":1,"title":"Name","description":"The brand name. Truncated to 150 characters.","examples":["Delirium"],"isRequired":true,"uniqueKey":"products.items.[INDEX].brand.oneOf.0.name","typeLabel":"string"}},"uniqueKey":"products.items.[INDEX].brand.oneOf.0","typeLabel":"Brand · object"},{"type":"null","description":"Brand information of the product.","uniqueKey":"products.items.[INDEX].brand.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].brand","typeLabel":"Brand · object | null"},"imageURL":{"type":"string","title":"Imageurl","description":"URL of the product image. This image will be displayed in the Topsort UI. Image dimensions between 250x250 and 600x600 pixels are recommended for the best performance of the Topsort UI.","format":"uri","minLength":1,"example":"https://cdn.example.com/products/eyGqR4YQgBJa.jpg","uniqueKey":"products.items.[INDEX].imageURL","typeLabel":"string\u003curi>"},"price":{"oneOf":[{"type":"number","title":"Price","description":"Price of the product in the currency configured in the marketplace.","minimum":0,"example":18.99,"exclusiveMinimum":true,"uniqueKey":"products.items.[INDEX].price.oneOf.0","typeLabel":"number"},{"type":"null","title":"Price","description":"Price of the product in the currency configured in the marketplace.","example":18.99,"uniqueKey":"products.items.[INDEX].price.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].price","typeLabel":"number | null"},"active":{"type":"boolean","title":"Active","description":"Flag that indicates whether this product is active. Only active products can take part in campaigns and auctions. Set this value to `false` to deactivate a product. When a product is deactivated it will be removed from active campaigns. \n We advise to set this flag to `false` when a product is out of stock.","default":true,"uniqueKey":"products.items.[INDEX].active","typeLabel":"boolean"},"ean":{"oneOf":[{"type":"string","title":"Ean","description":"Deprecated since 2026-08-06. Superseded by ``gtin``. European Article Number. Formatted as a thirteen digit EAN-13 code. An empty or whitespace-only value is treated as no value (null).well-formed EAN-13 is stored as no value (null) rather than rejecting the request.","maxLength":13,"minLength":13,"deprecated":true,"example":"4003994155486","uniqueKey":"products.items.[INDEX].ean.oneOf.0","typeLabel":"string"},{"type":"null","title":"Ean","description":"Deprecated since 2026-08-06. Superseded by ``gtin``. European Article Number. Formatted as a thirteen digit EAN-13 code. An empty or whitespace-only value is treated as no value (null).well-formed EAN-13 is stored as no value (null) rather than rejecting the request.","deprecated":true,"example":"4003994155486","uniqueKey":"products.items.[INDEX].ean.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].ean","typeLabel":"string | null"},"gtin":{"oneOf":[{"type":"string","title":"Gtin","description":"Global Trade Item Number. A GTIN helps us make your ad or listing easier for your customers to find. Products submitted without one may not be eligible for all advertising features. This field accepts EAN-13, UPC-A, JAN, ISBN-13 and GTIN-8 or GTIN-14 codes, with or without spaces or hyphens as separators. An empty or whitespace-only value is treated as no value (null).","example":"5901234123457","uniqueKey":"products.items.[INDEX].gtin.oneOf.0","typeLabel":"string"},{"type":"null","title":"Gtin","description":"Global Trade Item Number. A GTIN helps us make your ad or listing easier for your customers to find. Products submitted without one may not be eligible for all advertising features. This field accepts EAN-13, UPC-A, JAN, ISBN-13 and GTIN-8 or GTIN-14 codes, with or without spaces or hyphens as separators. An empty or whitespace-only value is treated as no value (null).","example":"5901234123457","uniqueKey":"products.items.[INDEX].gtin.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].gtin","typeLabel":"string | null"},"quality_score":{"oneOf":[{"type":"number","title":"Quality Score","description":"Marketplace's internal quality score for the product. This in an optional advanced use case, for which we can provide some insights. Examples of metrics include the product's rating, conversion rate, click through rate, combination of other metrics, etc.","maximum":1,"minimum":0,"exclusiveMinimum":true,"uniqueKey":"products.items.[INDEX].quality_score.oneOf.0","typeLabel":"number"},{"type":"null","title":"Quality Score","description":"Marketplace's internal quality score for the product. This in an optional advanced use case, for which we can provide some insights. Examples of metrics include the product's rating, conversion rate, click through rate, combination of other metrics, etc.","uniqueKey":"products.items.[INDEX].quality_score.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].quality_score","typeLabel":"number | null"},"metadata":{"oneOf":[{"type":"object","title":"Metadata","description":"Additional metadata for the product.","maxProperties":20,"additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"number","uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties.oneOf.1","typeLabel":"number"},{"type":"string","uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties.oneOf.2","typeLabel":"string"},{"type":"boolean","uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties.oneOf.3","typeLabel":"boolean"},{"type":"null","uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties.oneOf.4","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].metadata.oneOf.0.additionalProperties","typeLabel":"integer | number | string | boolean | null"},"uniqueKey":"products.items.[INDEX].metadata.oneOf.0","typeLabel":"Metadata · object"},{"type":"null","title":"Metadata","description":"Additional metadata for the product.","uniqueKey":"products.items.[INDEX].metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].metadata","typeLabel":"Metadata · object | null"},"globalId":{"oneOf":[{"type":"string","title":"Globalid","description":"Global ID of the product. This is an optional field that can be used to link the product to other marketplaces","maxLength":255,"minLength":1,"example":"PROD-12345","uniqueKey":"products.items.[INDEX].globalId.oneOf.0","typeLabel":"string"},{"type":"null","title":"Globalid","description":"Global ID of the product. This is an optional field that can be used to link the product to other marketplaces","example":"PROD-12345","uniqueKey":"products.items.[INDEX].globalId.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].globalId","typeLabel":"string | null"},"link":{"type":"string","title":"Link","description":"The product's landing page. Needed for Google Ads integration.","format":"uri","example":"http://www.example.com/asp/sp.asp?cat=12\u0026id=1030","uniqueKey":"products.items.[INDEX].link","typeLabel":"string\u003curi>"},"variantIds":{"oneOf":[{"type":"array","items":{"type":"string","maxLength":255,"minLength":1,"uniqueKey":"products.items.[INDEX].variantIds.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Variantids","description":"Alternative IDs of this product.","maxItems":50,"example":["eyGqR4YQgBJa","PROD-548","52c8c83c-2f4f-4873-87a0-1ccd88273b27"],"uniqueKey":"products.items.[INDEX].variantIds.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Variantids","description":"Alternative IDs of this product.","example":["eyGqR4YQgBJa","PROD-548","52c8c83c-2f4f-4873-87a0-1ccd88273b27"],"uniqueKey":"products.items.[INDEX].variantIds.oneOf.1","typeLabel":"null"}],"uniqueKey":"products.items.[INDEX].variantIds","typeLabel":"string[] | null"}},"type":"object","required":["id","name","vendors","categories"],"title":"Product","description":"A product is the minimum unit that can be sold within a marketplace catalog.\n\nThe required values are the minimum a product needs to participate in auctions.\nBeyond the minimum, we recommend including these fields for every product, since we\nuse them to improve relevance and reporting:\n - ``description``\n - ``price``\n - ``brand``\n - ``gtin``","uniqueKey":"products.items.[INDEX]","typeLabel":"Product · object"},"type":"array","maxItems":500,"minItems":1,"title":"Products","description":"The products to create or substitute.","isRequired":true,"uniqueKey":"products","typeLabel":"Product · object[]"}},"type":"object","required":["products"],"title":"ProductsRequest","uniqueKey":"","typeLabel":"ProductsRequest · object"},"examples":{"Example":{"title":"Example","value":{"products":[{"id":"eyGqR4YQgBJa","name":"Delirium Tremens Beer Bottle 330cc x6","vendors":["9SiwYqqL8vdG","BRAND-48795"],"categories":["ahEDqV5uhjj8"],"description":"Named as \"Best Beer in the World\" in 2008 at the World Beer Championships in Chicago, Illinois.","brand":{"id":"es5086vyV","name":"Delirium"},"imageURL":"https://cdn.example.com/products/eyGqR4YQgBJa.jpg","price":18.99,"active":true,"ean":"4003994155486","gtin":"5901234123457","quality_score":0.5,"metadata":{},"globalId":"PROD-12345","link":"http://www.example.com/asp/sp.asp?cat=12\u0026id=1030","variantIds":["eyGqR4YQgBJa","PROD-548","52c8c83c-2f4f-4873-87a0-1ccd88273b27"]}]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"00071b33-af0f-4006-a85f-fcf892ff4b05":{"description":"Successful Response","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"e93271ed-c8e1-4b7d-8590-395ab1bea759":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"ed030506-1176-48ce-b0dd-f19dcf4de9c9":{"Advanced_APIs_HTTPBearer":{"type":"http","description":"A valid API key generated in Topsort's UI. Use the TSE API key if calling auctions or events API, otherwise use the TSC API key.","scheme":"bearer","scopes":[],"schemeName":"Advanced_APIs_HTTPBearer"}}},"servers":{"48a67a54-dba9-4109-9bdd-ad1aabca2ee1":{"url":"https://api.topsort.com","description":"Base API URL"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","description":"A valid API key generated in Topsort's UI. Use the TSE API key if calling auctions or events API, otherwise use the TSC API key.","scheme":"bearer","scopes":[],"schemeName":"Advanced_APIs_HTTPBearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"A valid API key generated in Topsort's UI. Use the TSE API key if calling auctions or events API, otherwise use the TSC API key.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"Advanced_APIs_HTTPBearer","name":"Authorization"}],"title":"Advanced_APIs_HTTPBearer"}]},"originalFileLocation":"openapi.json"},"subdomain":"topsort","siteName":"Topsort Documentation","title":"Upsert Products - Topsort Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/en/api-reference/catalog-api/upsert-products","matchLevel":0},"es":{"href":"/es/api-reference/catalog-api/upsert-products","matchLevel":1},"pt":{"href":"/pt/api-reference/catalog-api/upsert-products","matchLevel":1},"fr":{"href":"/fr/api-reference/catalog-api/upsert-products","matchLevel":1},"de":{"href":"/de/api-reference/catalog-api/upsert-products","matchLevel":1}}},"lastModified":"2026-10-30T14:38:36.146Z","originalFileLocation":"en/api-reference/catalog-api/upsert-products.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upsert products.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Topsort Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Upsert Products - Topsort Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upsert products.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Topsort Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://topsort.mintlify.site/_mintlify/api/og/v2?division=Catalog+API\u0026amp;title=Upsert+Products\u0026amp;description=Upsert+products.\u0026amp;theme=ec0cb5145d1faab01b0dda03\u0026amp;signature=6fd19eab2b3643ac492931167510d013b09b8fa2ff5140f3a34e27c8f38102cb\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Upsert Products - Topsort Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upsert products.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://topsort.mintlify.site/_mintlify/api/og/v2?division=Catalog+API\u0026amp;title=Upsert+Products\u0026amp;description=Upsert+products.\u0026amp;theme=ec0cb5145d1faab01b0dda03\u0026amp;signature=6fd19eab2b3643ac492931167510d013b09b8fa2ff5140f3a34e27c8f38102cb\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/topsort/TELuk3ooLLcs9DrZ/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Topsort Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0074F7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/en/api-reference/catalog-api/upsert-products.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.topsort.com/es/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.topsort.com/pt/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.topsort.com/fr/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.topsort.com/de/api-reference/catalog-api/upsert-products\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.topsort.com/#organization\",\"name\":\"Topsort Documentation\",\"url\":\"https://docs.topsort.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/topsort/FdGgIIxdnNXimeCi/assets/logo-light.svg?fit=max\u0026auto=format\u0026n=FdGgIIxdnNXimeCi\u0026q=85\u0026s=52335392d5233f0542050e8af5c24ef4\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.topsort.com#website\",\"name\":\"Topsort Documentation\",\"url\":\"https://docs.topsort.com\",\"publisher\":{\"@id\":\"https://docs.topsort.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products#webpage\",\"url\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\",\"name\":\"Upsert Products\",\"description\":\"Upsert products.\",\"dateModified\":\"2026-10-30T14:38:36.146Z\",\"isPartOf\":{\"@id\":\"https://docs.topsort.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Catalog API\",\"item\":\"https://docs.topsort.com/en/api-reference/catalog-api/get-categories-count\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Upsert Products\",\"item\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products#apireference\",\"headline\":\"Upsert Products\",\"name\":\"Upsert Products\",\"description\":\"Upsert products.\",\"url\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products\",\"mainEntityOfPage\":{\"@id\":\"https://docs.topsort.com/en/api-reference/catalog-api/upsert-products#webpage\"},\"dateModified\":\"2026-10-30T14:38:36.146Z\",\"publisher\":{\"@id\":\"https://docs.topsort.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.topsort.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Topsort Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Topsort Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/en/api-reference/catalog-api/upsert-products.md","siteName":"Topsort Documentation","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"API Reference","icon":"square-terminal","groups":[{"group":"General","pages":[{"title":"Introduction","href":"/en/api-reference/introduction"},{"title":"Authentication","href":"/en/api-reference/authentication"},{"title":"API Key Types","href":"/en/api-reference/authentication/api-key-types"},{"title":"Handling Errors","href":"/en/api-reference/errors"},{"title":"Developer Logs","href":"/en/api-reference/logs"},{"title":"API Changelog","href":"/en/api-reference/api-changelog"}]},{"group":"Auction examples","pages":[{"title":"Running auctions","sidebarTitle":"Running auctions","href":"/en/api-reference/examples/auctions"},{"group":"Sponsored listings","pages":[{"title":"Sponsored listings from a set of products","sidebarTitle":"Set of products","href":"/en/api-reference/examples/sponsored-listings/set-of-products"},{"title":"Sponsored listings on category pages","sidebarTitle":"Categories","href":"/en/api-reference/examples/sponsored-listings/categories"},{"title":"Sponsored listings in search results","sidebarTitle":"Search","href":"/en/api-reference/examples/sponsored-listings/search"},{"title":"Combining winners and organic results","sidebarTitle":"Combining winners and organic results","href":"/en/api-reference/examples/sponsored-listings/combining-results"},{"title":"Filtering auctions by attributes","sidebarTitle":"Attribute filters","href":"/en/api-reference/examples/sponsored-listings/attribute-filters"}]},{"group":"Sponsored banners","pages":[{"title":"Sponsored Banners","sidebarTitle":"Banners","href":"/en/api-reference/examples/sponsored-banners/banners"},{"title":"Sponsored Banners in Carousels and Swimlanes","sidebarTitle":"Carousels and Swimlanes","href":"/en/api-reference/examples/sponsored-banners/carousels"},{"title":"Sponsored Banners on category pages","sidebarTitle":"Categories","href":"/en/api-reference/examples/sponsored-banners/categories"},{"title":"Sponsored Banners on landing pages","sidebarTitle":"Landing pages","href":"/en/api-reference/examples/sponsored-banners/landing-pages"},{"title":"Sponsored Banners on search pages","sidebarTitle":"Search","href":"/en/api-reference/examples/sponsored-banners/search"},{"title":"Banner Attribution","sidebarTitle":"Attribution","href":"/en/api-reference/examples/sponsored-banners/attribution"}]},{"title":"Sponsored brands","sidebarTitle":"Sponsored brands","href":"/en/api-reference/examples/sponsored-brands"}]},{"group":"Webhook examples","pages":[{"title":"Using webhooks","sidebarTitle":"Using webhooks","href":"/en/api-reference/examples/webhooks/usage"},{"title":"Webhook event \u0026 payloads","sidebarTitle":"Webhook event \u0026 payloads","href":"/en/api-reference/examples/webhooks/event-payloads"}]},{"group":"Auctions","pages":[{"title":"Create auctions","deprecated":null,"version":null,"openapi":"/openapi.json post /v2/auctions","href":"/en/api-reference/auctions/create-auctions"},{"title":"Create sponsored brand auctions","deprecated":null,"version":null,"openapi":"/openapi.json post /v2/auctions/sponsored-brand","href":"/en/api-reference/auctions/create-sponsored-brand-auctions"},{"title":"Create travel auctions","deprecated":null,"version":null,"openapi":"/openapi.json post /v2/auctions/travel","href":"/en/api-reference/auctions/create-travel-auctions"}]},{"group":"Events","pages":[{"title":"Report events","deprecated":null,"version":null,"openapi":"/openapi.json post /v2/events","href":"/en/api-reference/events/report-events"},{"title":"[Beta] Report Link Users","deprecated":null,"version":null,"openapi":"/openapi.json post /v2/events/beta/link-users","href":"/en/api-reference/events/[beta]-report-link-users"}]},{"group":"Toptimize","pages":[{"title":"[Beta] Rank objects","deprecated":null,"version":null,"openapi":"/openapi.json post /toptimize/v1/rank","href":"/en/api-reference/toptimize/[beta]-rank-objects"},{"title":"[Beta] Add Quality Score","deprecated":null,"version":null,"openapi":"/openapi.json post /toptimize/v1/predictions","href":"/en/api-reference/toptimize/[beta]-add-quality-score"},{"title":"[Beta] Retrieve objects","deprecated":null,"version":null,"openapi":"/openapi.json post /toptimize/v1/retrieval","href":"/en/api-reference/toptimize/[beta]-retrieve-objects"}]},{"group":"Toppie API","pages":[{"title":"[BETA] Get Toppie Campaigns","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/campaigns","href":"/en/api-reference/toppie-api/[beta]-get-toppie-campaigns"},{"title":"[BETA] Create Toppie Campaign","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/toppie/campaigns","href":"/en/api-reference/toppie-api/[beta]-create-toppie-campaign"},{"title":"[BETA] Get Toppie Campaign Details","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/campaigns/{campaign_id}","href":"/en/api-reference/toppie-api/[beta]-get-toppie-campaign-details"},{"title":"[BETA] Delete Toppie Campaign","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/toppie/campaigns/{campaign_id}","href":"/en/api-reference/toppie-api/[beta]-delete-toppie-campaign"},{"title":"[BETA] Update Toppie Campaign","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/toppie/campaigns/{campaign_id}","href":"/en/api-reference/toppie-api/[beta]-update-toppie-campaign"},{"title":"[BETA] Get Toppie Campaign Bids","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/campaigns/{campaign_id}/bids","href":"/en/api-reference/toppie-api/[beta]-get-toppie-campaign-bids"},{"title":"[BETA] Get Campaign Report.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting/campaigns/{campaign_id}","href":"/en/api-reference/toppie-api/[beta]-get-campaign-report"},{"title":"[BETA] Get Agency Account Report.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting","href":"/en/api-reference/toppie-api/[beta]-get-agency-account-report"},{"title":"[BETA] Get Campaign Products Report.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting/campaigns/{campaign_id}/products","href":"/en/api-reference/toppie-api/[beta]-get-campaign-products-report"},{"title":"[BETA] Get Campaigns Reporting.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting/campaigns","href":"/en/api-reference/toppie-api/[beta]-get-campaigns-reporting"},{"title":"[BETA] Account Activity Reports.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting/account-activity","href":"/en/api-reference/toppie-api/[beta]-account-activity-reports"},{"title":"Get Agency Daily Kpis By Product Dump Urls","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/reporting/file-reports/daily-kpis-by-product","href":"/en/api-reference/toppie-api/get-agency-daily-kpis-by-product-dump-urls"},{"title":"[BETA] List Account Products","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/toppie/products","href":"/en/api-reference/toppie-api/[beta]-list-account-products"}]},{"group":"Campaign API","pages":[{"title":"Get Campaign Restriction","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/{campaign_id}/restrictions","href":"/en/api-reference/campaign-api/get-campaign-restriction"},{"title":"Create Campaign Restriction","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/{campaign_id}/restrictions","href":"/en/api-reference/campaign-api/create-campaign-restriction"},{"title":"Update Campaign Restriction","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/{campaign_id}/restrictions/{restriction_id}","href":"/en/api-reference/campaign-api/update-campaign-restriction"},{"title":"Get Restriction Types","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/restriction-types","href":"/en/api-reference/campaign-api/get-restriction-types"},{"title":"Get Restriction Type","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/restriction-types/{restriction_type_id}","href":"/en/api-reference/campaign-api/get-restriction-type"},{"title":"Get Json Templates","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/json-templates","href":"/en/api-reference/campaign-api/get-json-templates"},{"title":"Create Json Template","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/json-templates","href":"/en/api-reference/campaign-api/create-json-template"},{"title":"Get Json Template","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/json-templates/{json_template_id}","href":"/en/api-reference/campaign-api/get-json-template"},{"title":"Update a JSON template","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/json-templates/{json_template_id}","href":"/en/api-reference/campaign-api/update-a-json-template"},{"title":"Create a sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/sponsored-brand","href":"/en/api-reference/campaign-api/create-a-sponsored-brand-campaign"},{"title":"Get a sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/sponsored-brand/{campaign_id}","href":"/en/api-reference/campaign-api/get-a-sponsored-brand-campaign"},{"title":"Update a sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/sponsored-brand/{campaign_id}","href":"/en/api-reference/campaign-api/update-a-sponsored-brand-campaign"},{"title":"List sponsored brand campaign bids.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/sponsored-brand/{campaign_id}/bids","href":"/en/api-reference/campaign-api/list-sponsored-brand-campaign-bids"},{"title":"Replace sponsored brand campaign bids.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/campaign-service/campaigns/sponsored-brand/{campaign_id}/bids","href":"/en/api-reference/campaign-api/replace-sponsored-brand-campaign-bids"},{"title":"Create an exclusive sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/sponsored-brand/exclusive","href":"/en/api-reference/campaign-api/create-an-exclusive-sponsored-brand-campaign"},{"title":"Get an exclusive sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/sponsored-brand/exclusive/{campaign_id}","href":"/en/api-reference/campaign-api/get-an-exclusive-sponsored-brand-campaign"},{"title":"Update an exclusive sponsored brand campaign.","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/sponsored-brand/exclusive/{campaign_id}","href":"/en/api-reference/campaign-api/update-an-exclusive-sponsored-brand-campaign"},{"title":"List exclusive sponsored brand campaign bids.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/sponsored-brand/exclusive/{campaign_id}/bids","href":"/en/api-reference/campaign-api/list-exclusive-sponsored-brand-campaign-bids"},{"title":"Replace exclusive sponsored brand campaign bids.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/campaign-service/campaigns/sponsored-brand/exclusive/{campaign_id}/bids","href":"/en/api-reference/campaign-api/replace-exclusive-sponsored-brand-campaign-bids"},{"title":"Get Campaigns","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns","href":"/en/api-reference/campaign-api/get-campaigns"},{"title":"Create Campaign","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns","href":"/en/api-reference/campaign-api/create-campaign"},{"title":"Get Campaign By Id","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/{campaign_id}","href":"/en/api-reference/campaign-api/get-campaign-by-id"},{"title":"Delete Campaign By Id","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/campaign-service/campaigns/{campaign_id}","href":"/en/api-reference/campaign-api/delete-campaign-by-id"},{"title":"Update Campaign By Id","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/{campaign_id}","href":"/en/api-reference/campaign-api/update-campaign-by-id"},{"title":"Get Campaign Bids","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/{campaign_id}/bids","href":"/en/api-reference/campaign-api/get-campaign-bids"},{"title":"Create Campaign Bids","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/{campaign_id}/bids","href":"/en/api-reference/campaign-api/create-campaign-bids"},{"title":"Delete All Bids From A Campaign","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/campaign-service/campaigns/{campaign_id}/bids","href":"/en/api-reference/campaign-api/delete-all-bids-from-a-campaign"},{"title":"Delete Campaign Bid By Id","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/campaign-service/campaigns/{campaign_id}/bids/{bid_id}","href":"/en/api-reference/campaign-api/delete-campaign-bid-by-id"},{"title":"Update Campaign Bid By Id","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/{campaign_id}/bids/{bid_id}","href":"/en/api-reference/campaign-api/update-campaign-bid-by-id"},{"title":"Get Products In Campaign","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/products-in-campaign","href":"/en/api-reference/campaign-api/get-products-in-campaign"},{"title":"Get Campaign Products (Banners \u0026 Sponsored Brands)","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/{campaign_id}/products","href":"/en/api-reference/campaign-api/get-campaign-products-banners-\u0026-sponsored-brands"},{"title":"Upsert Campaign Products","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/campaign-service/campaigns/{campaign_id}/products","href":"/en/api-reference/campaign-api/upsert-campaign-products"},{"title":"[BETA] Create exclusive listing campaign.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/exclusive-listing","href":"/en/api-reference/campaign-api/[beta]-create-exclusive-listing-campaign"},{"title":"[BETA] Get exclusive listing campaign by ID.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/exclusive-listing/{campaign_id}","href":"/en/api-reference/campaign-api/[beta]-get-exclusive-listing-campaign-by-id"},{"title":"[BETA] Update exclusive listing campaign by ID.","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/exclusive-listing/{campaign_id}","href":"/en/api-reference/campaign-api/[beta]-update-exclusive-listing-campaign-by-id"},{"title":"[BETA] Create exclusive banner campaign.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/campaign-service/campaigns/exclusive-banner","href":"/en/api-reference/campaign-api/[beta]-create-exclusive-banner-campaign"},{"title":"[BETA] Get exclusive banner campaign by ID.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/exclusive-banner/{campaign_id}","href":"/en/api-reference/campaign-api/[beta]-get-exclusive-banner-campaign-by-id"},{"title":"[BETA] Update exclusive banner campaign by ID.","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/campaign-service/campaigns/exclusive-banner/{campaign_id}","href":"/en/api-reference/campaign-api/[beta]-update-exclusive-banner-campaign-by-id"},{"title":"Retrieve campaign timetables (dayparting).","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/campaign-service/campaigns/{campaign_id}/timetables","href":"/en/api-reference/campaign-api/retrieve-campaign-timetables-dayparting"},{"title":"Create or update campaign timetables (dayparting).","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/campaign-service/campaigns/{campaign_id}/timetables","href":"/en/api-reference/campaign-api/create-or-update-campaign-timetables-dayparting"},{"title":"Delete a campaign timetable for a specific day (dayparting).","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/campaign-service/campaigns/{campaign_id}/timetables/{day_of_week}","href":"/en/api-reference/campaign-api/delete-a-campaign-timetable-for-a-specific-day-dayparting"}]},{"group":"Catalog API","pages":[{"title":"Get Categories Count","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/categories/count","href":"/en/api-reference/catalog-api/get-categories-count"},{"title":"Get Products Count","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/products/count","href":"/en/api-reference/catalog-api/get-products-count"},{"title":"Get Categories","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/categories","href":"/en/api-reference/catalog-api/get-categories"},{"title":"Upsert Categories","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/catalog-search-service/catalogs/categories","href":"/en/api-reference/catalog-api/upsert-categories"},{"title":"Delete Categories","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/catalog-search-service/catalogs/categories","href":"/en/api-reference/catalog-api/delete-categories"},{"title":"Get Category","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/categories/{category_id}","href":"/en/api-reference/catalog-api/get-category"},{"title":"Get Products","description":"Get multiple products from the catalog.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/get-products"},{"title":"Upsert Products","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/upsert-products"},{"title":"Delete Products","description":"Delete products by ID.","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/delete-products"},{"title":"Update Products","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/catalog-search-service/catalogs/products","href":"/en/api-reference/catalog-api/update-products"},{"title":"Get Product","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/products/{product_id}","href":"/en/api-reference/catalog-api/get-product"},{"title":"Get Vendors","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/vendors","href":"/en/api-reference/catalog-api/get-vendors"},{"title":"Upsert Vendors","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/catalog-search-service/catalogs/vendors","href":"/en/api-reference/catalog-api/upsert-vendors"},{"title":"Delete Vendors","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/catalog-search-service/catalogs/vendors","href":"/en/api-reference/catalog-api/delete-vendors"},{"title":"Get Vendor","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/catalog-search-service/catalogs/vendors/{vendor_id}","href":"/en/api-reference/catalog-api/get-vendor"}]},{"group":"Billing API","pages":[{"title":"Get Vendor Wallets","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/billing-service/vendors/{external_vendor_id}/wallets","href":"/en/api-reference/billing-api/get-vendor-wallets"},{"title":"Create Wallet","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/billing-service/vendors/{external_vendor_id}/wallets","href":"/en/api-reference/billing-api/create-wallet"},{"title":"Get Vendor Balance","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/billing-service/vendors/{external_vendor_id}/balance","href":"/en/api-reference/billing-api/get-vendor-balance"},{"title":"Add Vendor Balance","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/billing-service/vendors/{external_vendor_id}/balance","href":"/en/api-reference/billing-api/add-vendor-balance"},{"title":"Burn Vendor Balance","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/billing-service/vendors/{external_vendor_id}/balance/burn","href":"/en/api-reference/billing-api/burn-vendor-balance"},{"title":"Adjust Wallet Balance","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/billing-service/vendors/{external_vendor_id}/wallets/{wallet_id}/adjust","href":"/en/api-reference/billing-api/adjust-wallet-balance"},{"title":"Get Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/billing-service/billing-contacts/{billing_contact_id}","href":"/en/api-reference/billing-api/get-billing-contact"},{"title":"Upsert Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/billing-service/billing-contacts/{billing_contact_id}","href":"/en/api-reference/billing-api/upsert-billing-contact"},{"title":"Get Billing Contacts","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/billing-service/billing-contacts","href":"/en/api-reference/billing-api/get-billing-contacts"},{"title":"Upsert Vendor Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/billing-service/vendor-billing-contact","href":"/en/api-reference/billing-api/upsert-vendor-billing-contact"},{"title":"Delete Vendor Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/billing-service/vendors/{external_vendor_id}/vendor-billing-contact/{billing_contact_id}","href":"/en/api-reference/billing-api/delete-vendor-billing-contact"},{"title":"Get Campaign Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/billing-service/campaign-billing-contact","href":"/en/api-reference/billing-api/get-campaign-billing-contact"},{"title":"Upsert Campaign Billing Contact","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/billing-service/campaign-billing-contact","href":"/en/api-reference/billing-api/upsert-campaign-billing-contact"}]},{"group":"Reporting API","pages":[{"title":"Get Marketplace Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/marketplace","href":"/en/api-reference/reporting-api/get-marketplace-report"},{"title":"Get Marketplace Daily Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/marketplace/daily","href":"/en/api-reference/reporting-api/get-marketplace-daily-report"},{"title":"Get Vendor Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/vendors/{vendor_id}","href":"/en/api-reference/reporting-api/get-vendor-report"},{"title":"Get Vendor Daily Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/vendors/{vendor_id}/daily","href":"/en/api-reference/reporting-api/get-vendor-daily-report"},{"title":"Get Campaign Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}","href":"/en/api-reference/reporting-api/get-campaign-report"},{"title":"Get Campaign Daily Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/daily","href":"/en/api-reference/reporting-api/get-campaign-daily-report"},{"title":"Get Campaign Video Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/video","href":"/en/api-reference/reporting-api/get-campaign-video-report"},{"title":"Get Campaign Daily Video Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/video/daily","href":"/en/api-reference/reporting-api/get-campaign-daily-video-report"},{"title":"Get Product Daily Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/products/{product_id}/daily","href":"/en/api-reference/reporting-api/get-product-daily-report"},{"title":"Get Campaign Report By Product","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/products","href":"/en/api-reference/reporting-api/get-campaign-report-by-product"},{"title":"Get Product Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/campaigns/{campaign_id}/products/{product_id}","href":"/en/api-reference/reporting-api/get-product-report"},{"title":"Get Marketplace Vendors Kpis","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/marketplace/vendors-kpis","href":"/en/api-reference/reporting-api/get-marketplace-vendors-kpis"},{"title":"Get Marketplace Campaigns Kpis","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/marketplace/campaigns-kpis","href":"/en/api-reference/reporting-api/get-marketplace-campaigns-kpis"},{"title":"Get Marketplace Interactions Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/interactions","href":"/en/api-reference/reporting-api/get-marketplace-interactions-report"},{"title":"Get Scored Attribution Dump Urls","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/file-reports/scored-attribution","href":"/en/api-reference/reporting-api/get-scored-attribution-dump-urls"},{"title":"Get Interactions Dump Urls","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/reporting-service/file-reports/interactions","href":"/en/api-reference/reporting-api/get-interactions-dump-urls"}]},{"group":"Invitation API","pages":[{"title":"[BETA] Invite Vendors","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/invitation-service/invitations","href":"/en/api-reference/invitation-api/[beta]-invite-vendors"}]},{"group":"User API","pages":[{"title":"Get User By Email","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/user-service/advertiser-users","href":"/en/api-reference/user-api/get-user-by-email"},{"title":"Update User","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/user-service/advertiser-users","href":"/en/api-reference/user-api/update-user"},{"title":"Create User","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/user-service/advertiser-users","href":"/en/api-reference/user-api/create-user"}]},{"group":"Webhooks API","pages":[{"title":"Get Webhooks","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/webhooks/webhooks","href":"/en/api-reference/webhooks-api/get-webhooks"},{"title":"Create Webhook","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/webhooks/webhooks","href":"/en/api-reference/webhooks-api/create-webhook"},{"title":"Get Webhook","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/webhooks/webhooks/{webhook_id}","href":"/en/api-reference/webhooks-api/get-webhook"},{"title":"Delete Webhook","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/webhooks/webhooks/{webhook_id}","href":"/en/api-reference/webhooks-api/delete-webhook"},{"title":"Update Webhook","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/webhooks/webhooks/{webhook_id}","href":"/en/api-reference/webhooks-api/update-webhook"}]},{"group":"Assets API","pages":[{"title":"Create Asset","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/assets/asset","href":"/en/api-reference/assets-api/create-asset"},{"title":"Get Asset","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/assets/asset/{asset_id}","href":"/en/api-reference/assets-api/get-asset"},{"title":"Delete Asset","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/assets/asset/{asset_id}","href":"/en/api-reference/assets-api/delete-asset"},{"title":"Update Asset","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/assets/asset/{asset_id}","href":"/en/api-reference/assets-api/update-asset"},{"title":"Get Assets","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/assets/assets","href":"/en/api-reference/assets-api/get-assets"}]},{"group":"Segments Service","pages":[{"title":"Retrieve a list of segments.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/segment-service/segments","href":"/en/api-reference/segments-service/retrieve-a-list-of-segments"},{"title":"Upsert segments with the provided information.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/segment-service/segments","href":"/en/api-reference/segments-service/upsert-segments-with-the-provided-information"},{"title":"Retrieve a segment by ID.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/segment-service/segments/{segment_id}","href":"/en/api-reference/segments-service/retrieve-a-segment-by-id"},{"title":"Delete a segment.","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/segment-service/segments/{segment_id}","href":"/en/api-reference/segments-service/delete-a-segment"},{"title":"List vendors assigned to a segment.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/segment-service/segments/{segment_id}/vendors","href":"/en/api-reference/segments-service/list-vendors-assigned-to-a-segment"},{"title":"Add vendors to a segment.","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/segment-service/segments/{segment_id}/vendors","href":"/en/api-reference/segments-service/add-vendors-to-a-segment"},{"title":"Remove vendors from a segment.","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/segment-service/segments/{segment_id}/vendors","href":"/en/api-reference/segments-service/remove-vendors-from-a-segment"},{"title":"Get upload users signed url for a segment.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/segment-service/segments/{segment_id}/signed-url","href":"/en/api-reference/segments-service/get-upload-users-signed-url-for-a-segment"},{"title":"Upload users to a segment.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/segment-service/segments/{segment_id}/upload","href":"/en/api-reference/segments-service/upload-users-to-a-segment"}]},{"group":"Offsite Ads API","pages":[{"title":"Create a new advertiser","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/offsite-ads/advertisers","href":"/en/api-reference/offsite-ads-api/create-a-new-advertiser"},{"title":"Get Job Status","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/jobs/{job_id}","href":"/en/api-reference/offsite-ads-api/get-job-status"},{"title":"Get advertiser onboarding state for a specific DSP","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/advertisers/{vendor_id}","href":"/en/api-reference/offsite-ads-api/get-advertiser-onboarding-state-for-a-specific-dsp"},{"title":"Get vendor offsite campaigns","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/campaigns","href":"/en/api-reference/offsite-ads-api/get-vendor-offsite-campaigns"},{"title":"Create Campaign","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/offsite-ads/campaigns","href":"/en/api-reference/offsite-ads-api/create-campaign"},{"title":"Get campaign information","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/campaigns/{campaign_id}","href":"/en/api-reference/offsite-ads-api/get-campaign-information"},{"title":"Update Campaign","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/offsite-ads/campaigns/{campaign_id}","href":"/en/api-reference/offsite-ads-api/update-campaign"},{"title":"Get Campaign Products Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/reporting/campaigns/{campaign_id}/products","href":"/en/api-reference/offsite-ads-api/get-campaign-products-report"},{"title":"Get Campaign Aggregated Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/reporting/campaigns/{campaign_id}","href":"/en/api-reference/offsite-ads-api/get-campaign-aggregated-report"},{"title":"Get Campaign Daily Report","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/reporting/campaigns/{campaign_id}/daily","href":"/en/api-reference/offsite-ads-api/get-campaign-daily-report"},{"title":"List Offsite Audiences","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/audiences","href":"/en/api-reference/offsite-ads-api/list-offsite-audiences"},{"title":"Create Offsite Audiences Job","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/offsite-ads/audiences/user-list","href":"/en/api-reference/offsite-ads-api/create-offsite-audiences-job"},{"title":"Replace Offsite Audiences Job","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/offsite-ads/audiences/{audience_id}","href":"/en/api-reference/offsite-ads-api/replace-offsite-audiences-job"},{"title":"Delete Offsite Audience","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/offsite-ads/audiences/{audience_id}","href":"/en/api-reference/offsite-ads-api/delete-offsite-audience"},{"title":"Get Active Vendors","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/vendors/active","href":"/en/api-reference/offsite-ads-api/get-active-vendors"},{"title":"Get Vendor Balances","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/offsite-ads/vendors/balances","href":"/en/api-reference/offsite-ads-api/get-vendor-balances"}]},{"group":"Forecasting Service","pages":[{"title":"[DEPRECATED] Campaign Performance Forecasts","deprecated":true,"version":null,"openapi":"/openapi.json post /public/v1/toptimize/forecasting/campaign","href":"/en/api-reference/forecasting-service/[deprecated]-campaign-performance-forecasts"},{"title":"Listing Campaign Performance Forecasts","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/toptimize/forecasting/campaigns/listing","href":"/en/api-reference/forecasting-service/listing-campaign-performance-forecasts"},{"title":"Banner Campaign Performance Forecasts","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/toptimize/forecasting/campaigns/banner","href":"/en/api-reference/forecasting-service/banner-campaign-performance-forecasts"},{"title":"Sponsored Brand Campaign Performance Forecasts","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/toptimize/forecasting/campaigns/sponsored-brand","href":"/en/api-reference/forecasting-service/sponsored-brand-campaign-performance-forecasts"}]},{"group":"Media API","pages":[{"title":"Get Slots","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/media-service/slots","href":"/en/api-reference/media-api/get-slots"},{"title":"Create Slot","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/media-service/slots","href":"/en/api-reference/media-api/create-slot"},{"title":"Get Banner Fallbacks","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/media-service/slots/{slot_id}/fallback","href":"/en/api-reference/media-api/get-banner-fallbacks"},{"title":"Upsert Banner Fallback","deprecated":null,"version":null,"openapi":"/openapi.json put /public/v1/media-service/slots/{slot_id}/fallback","href":"/en/api-reference/media-api/upsert-banner-fallback"},{"title":"[DEPRECATED] Delete a banner fallback for a given slot.","deprecated":true,"version":null,"openapi":"/openapi.json delete /public/v1/media-service/slots/{slot_id}/fallback","href":"/en/api-reference/media-api/[deprecated]-delete-a-banner-fallback-for-a-given-slot"},{"title":"Delete Slot","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/media-service/slots/{slot_id}","href":"/en/api-reference/media-api/delete-slot"},{"title":"Toggle Slot","deprecated":null,"version":null,"openapi":"/openapi.json patch /public/v1/media-service/slots/{slot_id}","href":"/en/api-reference/media-api/toggle-slot"}]},{"group":"Placement API","pages":[{"title":"List placements.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/placement-service/placements","href":"/en/api-reference/placement-api/list-placements"},{"title":"Create a placement.","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/placement-service/placements","href":"/en/api-reference/placement-api/create-a-placement"},{"title":"Get a placement.","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/placement-service/placements/{external_placement_id}","href":"/en/api-reference/placement-api/get-a-placement"},{"title":"Delete a placement.","deprecated":null,"version":null,"openapi":"/openapi.json delete /public/v1/placement-service/placements/{external_placement_id}","href":"/en/api-reference/placement-api/delete-a-placement"}]},{"group":"Export API","pages":[{"title":"List exportable datasets","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/export-service/datasets","href":"/en/api-reference/export-api/list-exportable-datasets"},{"title":"Create a data export","deprecated":null,"version":null,"openapi":"/openapi.json post /public/v1/export-service/exports","href":"/en/api-reference/export-api/create-a-data-export"},{"title":"Get an export","deprecated":null,"version":null,"openapi":"/openapi.json get /public/v1/export-service/exports/{export_id}","href":"/en/api-reference/export-api/get-an-export"}]},{"group":"API Reference","pages":[{"title":"Endpoint to notify events generated in topsort","version":null,"deprecated":null,"openapi":"/openapi.json webhook webhooks","href":"/en/api-reference/endpoint-to-notify-events-generated-in-topsort"}]}]},{"tab":"Integration Guide","icon":"plug","pages":[{"title":"Integration Guide","href":"/en/overview"}]},{"tab":"Knowledge Base","icon":"book-open","pages":[{"title":"Knowledge Base","href":"/en/knowledge-base"}]},{"tab":"Changelog","icon":"clock","pages":[{"title":"Changelog","href":"/en/changelog"}]}]},{"language":"es","pages":[{"title":"es","href":"/es/api-reference/catalog-api/upsert-products"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/api-reference/catalog-api/upsert-products"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/api-reference/catalog-api/upsert-products"}]},{"language":"de","pages":[{"title":"de","href":"/de/api-reference/catalog-api/upsert-products"}]}]},"basePath":"","title":"Upsert Products - Topsort Documentation","buildId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","deploymentId":"dpl_DqYu5MPb49gWBBbUGgpHQUmCHY3P","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CybtLBIt.js","utils-BMLj2fvV.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-B6In562Y.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dr8Mfhp9.js","snippetPresets-2rmQvMVl.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-WMqJYdZj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CJ-MlPHu.js","shallow-dY3TMRCk.js","getApiPlaygroundDisplay-v-1B2bKm.js","CodeSnippet-BDhiTB7U.js","CodeSnippets-D9hnzQcS.js","Page-C4GwDT3_.js","getPastedJson-Th2V45jI.js","icon-BQXch1W9.js","MethodPill-BCqUneP3.js","DuplicateIcon-Q_-bhurZ.js","createIcon-DUjLHRqp.js","DynamicMarkdown-B-f2cqXQ.js","SectionHeading-Da5NsV4v.js","axios-vUo_bRtp.js","Markdown-D13FWkIM.js","clsx-D3Isdib3.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-C-XZBk9h.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink--qIqmmVG.js"]}