Add Activepieces integration for workflow automation
- Add Activepieces fork with SmoothSchedule custom piece - Create integrations app with Activepieces service layer - Add embed token endpoint for iframe integration - Create Automations page with embedded workflow builder - Add sidebar visibility fix for embed mode - Add list inactive customers endpoint to Public API - Include SmoothSchedule triggers: event created/updated/cancelled - Include SmoothSchedule actions: create/update/cancel events, list resources/services/customers 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"Shopify": "Shopify",
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "Email",
|
||||
"Verified Email": "Verified Email",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "Tags",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "Title",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "Status",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "Description",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "Type",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "Source",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Active": "Active",
|
||||
"Draft": "Draft",
|
||||
"Archived": "Archived",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "E-Commerce-Plattform für Online-Shops",
|
||||
"Shop Name": "Shopname",
|
||||
"Admin Token": "Admin-Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop-Name**:\n\nSie finden Ihren Shop-Namen in der Url zum Beispiel, wenn die URL `https://example ist. yshopify.com/admin`, dann ist Ihr Shopname **beispiel**.\n\n**Admin-Token**:\n\n1. Melden Sie sich bei Ihrem Shopify Konto\n2. Gehen Sie zu Einstellungen -> Apps\n3. Klicken Sie auf Apps\n4. Erstellen Sie eine App\n5. Geben Sie den App-Namen\nein. Klicken Sie auf Admin API Scopes einrichten (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Klicken Sie auf App installieren\n8. Den Admin Access Token\n kopieren",
|
||||
"Adjust Inventory Level": "Inventarlevel anpassen",
|
||||
"Cancel Order": "Bestellung stornieren",
|
||||
"Close Order": "Bestellung schließen",
|
||||
"Create Collect": "Sammlung erstellen",
|
||||
"Create Customer": "Kunde erstellen",
|
||||
"Create Draft Order": "Entwurf der Bestellung erstellen",
|
||||
"Create Fulfillment Event": "Erstelle Fulfillment Event",
|
||||
"Create Order": "Bestellung erstellen",
|
||||
"Create Product": "Produkt erstellen",
|
||||
"Create Transaction": "Transaktion erstellen",
|
||||
"Get Asset": "Asset holen",
|
||||
"Get Customer": "Kunde erhalten",
|
||||
"Get Customers": "Kunden holen",
|
||||
"Get Customer Orders": "Kundenbestellungen abrufen",
|
||||
"Get Fulfillment": "Erhalten Sie Erfüllung",
|
||||
"Get Fulfillments": "Aufträge abrufen",
|
||||
"Get Locations": "Standorte abrufen",
|
||||
"Get Product": "Produkt erhalten",
|
||||
"Get Product Variant": "Produkt-Variante erhalten",
|
||||
"Get Products": "Produkte erhalten",
|
||||
"Get Transaction": "Transaktion abrufen",
|
||||
"Get Order Transactions": "Bestellvorgänge abrufen",
|
||||
"Update Customer": "Kunde aktualisieren",
|
||||
"Update Order": "Bestellung aktualisieren",
|
||||
"Update Product": "Produkt aktualisieren",
|
||||
"Upload Product Image": "Produktbild hochladen",
|
||||
"Custom API Call": "Eigener API-Aufruf",
|
||||
"Adjust inventory level of an item at a location.": "Inventarlevel eines Gegenstands an einem Ort anpassen.",
|
||||
"Cancel an order.": "Bestellung stornieren.",
|
||||
"Close an order.": "Bestellung schließen.",
|
||||
"Add a product to a collection.": "Fügen Sie ein Produkt zu einer Sammlung hinzu.",
|
||||
"Create a new customer.": "Neuen Kunden anlegen.",
|
||||
"Create a new draft order.": "Erstellen Sie einen neuen Auftragsentwurf.",
|
||||
"Create a new fulfillment event.": "Erstelle ein neues Fulfillment-Ereignis.",
|
||||
"Create a new order.": "Neue Bestellung anlegen.",
|
||||
"Create a new product.": "Ein neues Produkt anlegen.",
|
||||
"Create a new transaction.": "Neue Transaktion anlegen.",
|
||||
"Get a theme's asset.": "Erhalte ein Theme-Asset.",
|
||||
"Get an existing customer's information.": "Erhalten Sie die Informationen eines bestehenden Kunden.",
|
||||
"Get an existing customers.": "Erhalten Sie bereits existierende Kunden.",
|
||||
"Get an existing customer's orders.": "Erhalten Sie eine bestehende Kundenbestellung.",
|
||||
"Get a fulfillment.": "Erhalte eine Erfüllung.",
|
||||
"Get an order's fulfillments.": "Erhalten Sie die Erfüllung einer Bestellung.",
|
||||
"Get locations.": "Standorte abrufen.",
|
||||
"Get existing product.": "Vorhandenes Produkt holen.",
|
||||
"Get a product variant.": "Erhalten Sie eine Produktvariante.",
|
||||
"Get existing products by title.": "Erhalten Sie vorhandene Artikel nach Titel.",
|
||||
"Get an existing transaction's information.": "Erhalten Sie die Informationen einer existierenden Transaktion.",
|
||||
"Get an order's transactions.": "Bestellvorgänge abrufen.",
|
||||
"Update an existing customer.": "Aktualisiere einen bestehenden Kunden.",
|
||||
"Update an existing order.": "Bestehende Bestellung aktualisieren.",
|
||||
"Update an existing product.": "Aktualisiere ein existierendes Produkt.",
|
||||
"Upload a new product image.": "Ein neues Produktbild hochladen.",
|
||||
"Make a custom API call to a specific endpoint": "Einen benutzerdefinierten API-Aufruf an einen bestimmten Endpunkt machen",
|
||||
"Inventory Item": "Inventarartikel",
|
||||
"Location": "Standort",
|
||||
"Adjustment": "Anpassung",
|
||||
"Order": "Sortierung",
|
||||
"Product": "Produkt",
|
||||
"Collection": "Sammlung",
|
||||
"Email": "E-Mail",
|
||||
"Verified Email": "Bestätigte E-Mail",
|
||||
"Send Email Invite": "E-Mail Einladung senden",
|
||||
"First Name": "Vorname",
|
||||
"Last Name": "Nachname",
|
||||
"Phone Number": "Telefonnummer",
|
||||
"Tags": "Tags",
|
||||
"Accepts Marketing ?": "Akzeptiert Marketing ?",
|
||||
"Product Variant": "Produktvariante",
|
||||
"Title": "Titel",
|
||||
"Quantity": "Menge",
|
||||
"Price": "Preis",
|
||||
"Customer": "Kunde",
|
||||
"Fulfillment": "Erfüllung",
|
||||
"Status": "Status",
|
||||
"Message": "Nachricht",
|
||||
"Send Receipt": "Quittung senden",
|
||||
"Send Fulfillment Receipt": "Auftragsbestätigung senden",
|
||||
"Description": "Beschreibung",
|
||||
"Product Type": "Produkttyp",
|
||||
"Product Image": "Produktbild",
|
||||
"Vendor": "Lieferant",
|
||||
"Type": "Typ",
|
||||
"Currency": "Währung",
|
||||
"Amount": "Betrag",
|
||||
"Authorization Key": "Autorisierungsschlüssel",
|
||||
"Parent ID": "Eltern-ID",
|
||||
"Source": "Quelle",
|
||||
"Test": "Testen",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Thema",
|
||||
"Customer ID": "Kunden-ID",
|
||||
"Transaction": "Transaktion",
|
||||
"Note": "Notiz",
|
||||
"Image": "Bild",
|
||||
"Position": "Position",
|
||||
"Method": "Methode",
|
||||
"Headers": "Kopfzeilen",
|
||||
"Query Parameters": "Abfrageparameter",
|
||||
"Body": "Körper",
|
||||
"Response is Binary ?": "Antwort ist binär?",
|
||||
"No Error on Failure": "Kein Fehler bei Fehler",
|
||||
"Timeout (in seconds)": "Timeout (in Sekunden)",
|
||||
"The ID of the inventory item.": "Die ID des Inventars.",
|
||||
"The ID of the location.": "Die ID des Ortes.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive Werte erhöhen das Inventar, negative Werte verringern es.",
|
||||
"The ID of the order.": "Die ID der Bestellung.",
|
||||
"The ID of the product.": "Die ID des Produktes.",
|
||||
"The ID of the collection.": "Die ID der Sammlung.",
|
||||
"Whether the customer has verified their email.": "Ob der Kunde seine E-Mail verifiziert hat.",
|
||||
"A string of comma-separated tags for filtering and search": "Eine Zeichenkette kommaseparierter Tags zum Filtern und Suchen",
|
||||
"The ID of the product to create the order with.": "Die ID des Produkts, mit dem die Bestellung erstellt werden soll.",
|
||||
"The ID of the variant to create the order with.": "Die ID der Variante, mit der die Bestellung erstellt werden soll.",
|
||||
"The ID of the customer to use.": "Die ID des zu verwendenden Kunden.",
|
||||
"The ID of the fulfillment.": "Die ID der Erfüllung.",
|
||||
"Product description (supports HTML)": "Produktbeschreibung (unterstützt HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Eine Kategorisierung für das Produkt zum Filtern und Suchen von Produkten",
|
||||
"The public URL or the base64 image to use": "Die öffentliche URL oder das Base64-Bild",
|
||||
"The ID of the order to create a transaction for.": "Die ID der Bestellung, für die eine Transaktion erstellt werden soll.",
|
||||
"The ID of an associated transaction.": "Die ID einer zugehörigen Transaktion.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Eine optionale Herkunft der Transaktion. Extern einstellen, um eine Bartransaktion für die zugehörige Bestellung zu importieren.",
|
||||
"Whether the transaction is a test transaction.": "Ob die Transaktion eine Testtransaktion ist.",
|
||||
"The ID of the theme.": "Die ID des Themes.",
|
||||
"The ID of the product variant.": "Die ID der Produktvariante.",
|
||||
"The ID of the transaction": "Die ID der Transaktion",
|
||||
"1 makes it the main image.": "1 macht es das Hauptbild.",
|
||||
"Authorization headers are injected automatically from your connection.": "Autorisierungs-Header werden automatisch von Ihrer Verbindung injiziert.",
|
||||
"Enable for files like PDFs, images, etc..": "Aktivieren für Dateien wie PDFs, Bilder, etc..",
|
||||
"Active": "Aktiv",
|
||||
"Draft": "Entwurf",
|
||||
"Archived": "Archiviert",
|
||||
"GET": "ERHALTEN",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "LÖSCHEN",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "Neuer Verlassener Checkout",
|
||||
"New Cancelled Order": "Neue Bestellung storniert",
|
||||
"New Customer": "Neuer Kunde",
|
||||
"New Order": "Neue Bestellung",
|
||||
"Updated Product": "Aktualisiertes Produkt",
|
||||
"New Paid Order": "Neue bezahlte Bestellung",
|
||||
"Triggers when a checkout is abandoned.": "Wird ausgelöst, wenn eine Kasse aufgegeben wird.",
|
||||
"Triggered when order is cancelled": "Ausgelöst, wenn Bestellung storniert wird",
|
||||
"Triggered when a new customer is created": "Wird ausgelöst, wenn ein neuer Kunde erstellt wird",
|
||||
"Triggered when a new order is created": "Wird ausgelöst, wenn eine neue Bestellung erstellt wird",
|
||||
"Triggered when a product is updated.": "Wird ausgelöst, wenn ein Produkt aktualisiert wird.",
|
||||
"Triggered when a paid order is created": "Wird ausgelöst, wenn eine bezahlte Bestellung erstellt wird"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Plataforma de comercio electrónico para tiendas en línea",
|
||||
"Shop Name": "Nombre de tienda",
|
||||
"Admin Token": "Token de Admin",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Ajustar nivel de inventario",
|
||||
"Cancel Order": "Cancelar orden",
|
||||
"Close Order": "Cerrar pedido",
|
||||
"Create Collect": "Crear colección",
|
||||
"Create Customer": "Crear cliente",
|
||||
"Create Draft Order": "Crear orden borrador",
|
||||
"Create Fulfillment Event": "Crear evento de llenado",
|
||||
"Create Order": "Crear pedido",
|
||||
"Create Product": "Crear Producto",
|
||||
"Create Transaction": "Crear transacción",
|
||||
"Get Asset": "Obtener Activo",
|
||||
"Get Customer": "Obtener cliente",
|
||||
"Get Customers": "Obtener clientes",
|
||||
"Get Customer Orders": "Obtener pedidos de cliente",
|
||||
"Get Fulfillment": "Obtener cumplimiento",
|
||||
"Get Fulfillments": "Obtener Cumplimientos",
|
||||
"Get Locations": "Obtener ubicaciones",
|
||||
"Get Product": "Obtener Producto",
|
||||
"Get Product Variant": "Obtener variante de producto",
|
||||
"Get Products": "Obtener productos",
|
||||
"Get Transaction": "Obtener transacción",
|
||||
"Get Order Transactions": "Obtener transacciones de pedido",
|
||||
"Update Customer": "Actualizar cliente",
|
||||
"Update Order": "Actualizar pedido",
|
||||
"Update Product": "Actualizar Producto",
|
||||
"Upload Product Image": "Subir imagen de producto",
|
||||
"Custom API Call": "Llamada API personalizada",
|
||||
"Adjust inventory level of an item at a location.": "Ajusta el nivel de inventario de un elemento en una ubicación.",
|
||||
"Cancel an order.": "Cancelar una orden.",
|
||||
"Close an order.": "Cerrar un pedido.",
|
||||
"Add a product to a collection.": "Añadir un producto a una colección.",
|
||||
"Create a new customer.": "Crear un nuevo cliente.",
|
||||
"Create a new draft order.": "Crear un nuevo borrador de pedido.",
|
||||
"Create a new fulfillment event.": "Crear un nuevo evento de cumplimiento.",
|
||||
"Create a new order.": "Crear un nuevo pedido.",
|
||||
"Create a new product.": "Crear un nuevo producto.",
|
||||
"Create a new transaction.": "Crear una nueva transacción.",
|
||||
"Get a theme's asset.": "Obtener el activo de un tema.",
|
||||
"Get an existing customer's information.": "Obtener la información de un cliente existente.",
|
||||
"Get an existing customers.": "Obtener clientes existentes.",
|
||||
"Get an existing customer's orders.": "Obtener pedidos de un cliente existente.",
|
||||
"Get a fulfillment.": "Obtén un cumplimiento.",
|
||||
"Get an order's fulfillments.": "Obtén el cumplimiento de un pedido.",
|
||||
"Get locations.": "Obtener ubicaciones.",
|
||||
"Get existing product.": "Obtener producto existente.",
|
||||
"Get a product variant.": "Obtener una variante de producto.",
|
||||
"Get existing products by title.": "Obtener productos existentes por título.",
|
||||
"Get an existing transaction's information.": "Obtener información de una transacción existente.",
|
||||
"Get an order's transactions.": "Obtener las transacciones de un pedido.",
|
||||
"Update an existing customer.": "Actualizar un cliente existente.",
|
||||
"Update an existing order.": "Actualizar un pedido existente.",
|
||||
"Update an existing product.": "Actualizar un producto existente.",
|
||||
"Upload a new product image.": "Subir una imagen de nuevo producto.",
|
||||
"Make a custom API call to a specific endpoint": "Hacer una llamada API personalizada a un extremo específico",
|
||||
"Inventory Item": "Artículo de inventario",
|
||||
"Location": "Ubicación",
|
||||
"Adjustment": "Ajuste",
|
||||
"Order": "Pedido",
|
||||
"Product": "Producto",
|
||||
"Collection": "Colección",
|
||||
"Email": "E-mail",
|
||||
"Verified Email": "Correo verificado",
|
||||
"Send Email Invite": "Enviar invitación por email",
|
||||
"First Name": "Nombre",
|
||||
"Last Name": "Apellido",
|
||||
"Phone Number": "Número de teléfono",
|
||||
"Tags": "Etiquetas",
|
||||
"Accepts Marketing ?": "¿Acepta Marketing ?",
|
||||
"Product Variant": "Variante de producto",
|
||||
"Title": "Título",
|
||||
"Quantity": "Cantidad",
|
||||
"Price": "Precio",
|
||||
"Customer": "Cliente",
|
||||
"Fulfillment": "Cumplimiento",
|
||||
"Status": "Estado",
|
||||
"Message": "Mensaje",
|
||||
"Send Receipt": "Enviar recibo",
|
||||
"Send Fulfillment Receipt": "Enviar recibo de cumplimiento",
|
||||
"Description": "Descripción",
|
||||
"Product Type": "Tipo de producto",
|
||||
"Product Image": "Imagen del producto",
|
||||
"Vendor": "Vendedor",
|
||||
"Type": "Tipo",
|
||||
"Currency": "Moneda",
|
||||
"Amount": "Cantidad",
|
||||
"Authorization Key": "Clave de autorización",
|
||||
"Parent ID": "ID padre",
|
||||
"Source": "Fuente",
|
||||
"Test": "Prueba",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Tema",
|
||||
"Customer ID": "ID del cliente",
|
||||
"Transaction": "Transacción",
|
||||
"Note": "Nota",
|
||||
"Image": "Imagen",
|
||||
"Position": "Posición",
|
||||
"Method": "Método",
|
||||
"Headers": "Encabezados",
|
||||
"Query Parameters": "Parámetros de consulta",
|
||||
"Body": "Cuerpo",
|
||||
"Response is Binary ?": "¿Respuesta es binaria?",
|
||||
"No Error on Failure": "No hay ningún error en fallo",
|
||||
"Timeout (in seconds)": "Tiempo de espera (en segundos)",
|
||||
"The ID of the inventory item.": "La ID del elemento del inventario.",
|
||||
"The ID of the location.": "El ID de la ubicación.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Los valores positivos aumentan el inventario, los valores negativos lo reducen.",
|
||||
"The ID of the order.": "El ID del pedido.",
|
||||
"The ID of the product.": "El ID del producto.",
|
||||
"The ID of the collection.": "El ID de la colección.",
|
||||
"Whether the customer has verified their email.": "Si el cliente ha verificado su correo electrónico.",
|
||||
"A string of comma-separated tags for filtering and search": "Una cadena de etiquetas separadas por comas para filtrar y buscar",
|
||||
"The ID of the product to create the order with.": "El ID del producto con el que crear el pedido.",
|
||||
"The ID of the variant to create the order with.": "El ID de la variante con la que crear el pedido.",
|
||||
"The ID of the customer to use.": "El ID del cliente a utilizar.",
|
||||
"The ID of the fulfillment.": "El ID del cumplimiento.",
|
||||
"Product description (supports HTML)": "Descripción del producto (soporta HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Una categorización para el producto utilizado para filtrar y buscar productos",
|
||||
"The public URL or the base64 image to use": "La URL pública o la imagen base64 a usar",
|
||||
"The ID of the order to create a transaction for.": "El ID del pedido para crear una transacción.",
|
||||
"The ID of an associated transaction.": "El ID de una transacción asociada.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Un origen opcional de la transacción. Establecer en externo para importar una transacción en efectivo para el pedido asociado.",
|
||||
"Whether the transaction is a test transaction.": "Si la transacción es una transacción de prueba.",
|
||||
"The ID of the theme.": "El ID del tema.",
|
||||
"The ID of the product variant.": "El ID de la variante del producto.",
|
||||
"The ID of the transaction": "El ID de la transacción",
|
||||
"1 makes it the main image.": "1 lo convierte en la imagen principal.",
|
||||
"Authorization headers are injected automatically from your connection.": "Las cabeceras de autorización se inyectan automáticamente desde tu conexión.",
|
||||
"Enable for files like PDFs, images, etc..": "Activar para archivos como PDFs, imágenes, etc.",
|
||||
"Active": "Activo",
|
||||
"Draft": "Borrador",
|
||||
"Archived": "Archivado",
|
||||
"GET": "RECOGER",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "BORRAR",
|
||||
"HEAD": "LIMPIO",
|
||||
"New Abandoned Checkout": "Nuevo pago abandonado",
|
||||
"New Cancelled Order": "Nuevo pedido cancelado",
|
||||
"New Customer": "Nuevo cliente",
|
||||
"New Order": "Nuevo pedido",
|
||||
"Updated Product": "Artículo actualizado",
|
||||
"New Paid Order": "Nuevo pedido pagado",
|
||||
"Triggers when a checkout is abandoned.": "Dispara cuando un pago es abandonado.",
|
||||
"Triggered when order is cancelled": "Activado cuando se cancela el pedido",
|
||||
"Triggered when a new customer is created": "Se activa cuando se crea un nuevo cliente",
|
||||
"Triggered when a new order is created": "Activado cuando se crea un nuevo pedido",
|
||||
"Triggered when a product is updated.": "Se activa cuando se actualiza un producto.",
|
||||
"Triggered when a paid order is created": "Activado cuando se crea un pedido de pago"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Plateforme de commerce électronique pour les magasins en ligne",
|
||||
"Shop Name": "Nom de la boutique",
|
||||
"Admin Token": "Jeton d'administration",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Nom de la boutique** :\n\nVous pouvez trouver le nom de votre boutique dans l'url Par exemple, si l'URL est `https://example. yshopify.com/admin`, alors le nom de votre boutique est **exemple**.\n\n**Jeton d'admin** :\n\n1. Connectez-vous à votre compte Shopify\n2. Allez dans Paramètres -> Applications\n3. Cliquez sur Développer les applications\n4. Créer une application\n5. Remplissez le nom de l'application\n6. Cliquez sur Configurer les portées de l'API Admin (Sélectionnez les portées suivantes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Cliquez sur Installer l'application\n8. Copiez le jeton d'accès Admin\n",
|
||||
"Adjust Inventory Level": "Ajuster le niveau d'inventaire",
|
||||
"Cancel Order": "Annuler la commande",
|
||||
"Close Order": "Clôturer l'ordre",
|
||||
"Create Collect": "Créer une Collecte",
|
||||
"Create Customer": "Créer un client",
|
||||
"Create Draft Order": "Créer un brouillon de commande",
|
||||
"Create Fulfillment Event": "Créer un événement d'Accomplissement",
|
||||
"Create Order": "Créer une commande",
|
||||
"Create Product": "Créer un produit",
|
||||
"Create Transaction": "Créer une transaction",
|
||||
"Get Asset": "Obtenir un bien",
|
||||
"Get Customer": "Obtenir le client",
|
||||
"Get Customers": "Obtenir des clients",
|
||||
"Get Customer Orders": "Obtenir les commandes du client",
|
||||
"Get Fulfillment": "Obtenir l'Accomplissement",
|
||||
"Get Fulfillments": "Obtenir des Accomplissements",
|
||||
"Get Locations": "Obtenir des emplacements",
|
||||
"Get Product": "Obtenir le produit",
|
||||
"Get Product Variant": "Obtenir une variante de produit",
|
||||
"Get Products": "Obtenir des produits",
|
||||
"Get Transaction": "Obtenir la transaction",
|
||||
"Get Order Transactions": "Obtenir les transactions de commande",
|
||||
"Update Customer": "Mettre à jour le client",
|
||||
"Update Order": "Mettre à jour la commande",
|
||||
"Update Product": "Mettre à jour le produit",
|
||||
"Upload Product Image": "Charger une image de produit",
|
||||
"Custom API Call": "Appel d'API personnalisé",
|
||||
"Adjust inventory level of an item at a location.": "Ajuster le niveau d'inventaire d'un objet à un endroit.",
|
||||
"Cancel an order.": "Annuler une commande.",
|
||||
"Close an order.": "Fermer une commande.",
|
||||
"Add a product to a collection.": "Ajouter un produit à une collection.",
|
||||
"Create a new customer.": "Créer un nouveau client.",
|
||||
"Create a new draft order.": "Créer un nouveau brouillon de commande.",
|
||||
"Create a new fulfillment event.": "Créer un nouvel événement d'accomplissement.",
|
||||
"Create a new order.": "Créer une nouvelle commande.",
|
||||
"Create a new product.": "Créer un nouveau produit.",
|
||||
"Create a new transaction.": "Créer une nouvelle transaction.",
|
||||
"Get a theme's asset.": "Obtenir l'actif d'un thème.",
|
||||
"Get an existing customer's information.": "Obtenir les informations d'un client existant.",
|
||||
"Get an existing customers.": "Obtenir un client existant.",
|
||||
"Get an existing customer's orders.": "Récupère les commandes d'un client existant.",
|
||||
"Get a fulfillment.": "Obtenir un accomplissement.",
|
||||
"Get an order's fulfillments.": "Obtenir les accomplissements d'une commande.",
|
||||
"Get locations.": "Obtenir des emplacements.",
|
||||
"Get existing product.": "Récupérer le produit existant.",
|
||||
"Get a product variant.": "Obtenir une variante de produit.",
|
||||
"Get existing products by title.": "Obtenir les produits existants par titre.",
|
||||
"Get an existing transaction's information.": "Obtenir les informations d'une transaction existante.",
|
||||
"Get an order's transactions.": "Obtenir les transactions d'une commande.",
|
||||
"Update an existing customer.": "Mettre à jour un client existant.",
|
||||
"Update an existing order.": "Mettre à jour une commande existante.",
|
||||
"Update an existing product.": "Mettre à jour un produit existant.",
|
||||
"Upload a new product image.": "Télécharger une nouvelle image de produit.",
|
||||
"Make a custom API call to a specific endpoint": "Passer un appel API personnalisé à un endpoint spécifique",
|
||||
"Inventory Item": "Article d'inventaire",
|
||||
"Location": "Localisation",
|
||||
"Adjustment": "Ajustement",
|
||||
"Order": "Commandes",
|
||||
"Product": "Produit",
|
||||
"Collection": "Collecte",
|
||||
"Email": "Courriel",
|
||||
"Verified Email": "Email vérifié",
|
||||
"Send Email Invite": "Envoyer une invitation par e-mail",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Numéro de téléphone",
|
||||
"Tags": "Tags",
|
||||
"Accepts Marketing ?": "Accepte le marketing ?",
|
||||
"Product Variant": "Variante de produit",
|
||||
"Title": "Titre de la page",
|
||||
"Quantity": "Quantité",
|
||||
"Price": "Prix",
|
||||
"Customer": "Client",
|
||||
"Fulfillment": "Accomplissement",
|
||||
"Status": "Statut",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Envoyer un reçu",
|
||||
"Send Fulfillment Receipt": "Envoyer un reçu d'Accomplissement",
|
||||
"Description": "Libellé",
|
||||
"Product Type": "Type de produit",
|
||||
"Product Image": "Image du produit",
|
||||
"Vendor": "Fournisseur",
|
||||
"Type": "Type de texte",
|
||||
"Currency": "Devise",
|
||||
"Amount": "Montant",
|
||||
"Authorization Key": "Clé d'autorisation",
|
||||
"Parent ID": "ID parent",
|
||||
"Source": "Source",
|
||||
"Test": "Tester",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Thème",
|
||||
"Customer ID": "ID du client",
|
||||
"Transaction": "Opération",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Méthode",
|
||||
"Headers": "En-têtes",
|
||||
"Query Parameters": "Paramètres de requête",
|
||||
"Body": "Corps",
|
||||
"Response is Binary ?": "La réponse est Binaire ?",
|
||||
"No Error on Failure": "Aucune erreur en cas d'échec",
|
||||
"Timeout (in seconds)": "Délai d'expiration (en secondes)",
|
||||
"The ID of the inventory item.": "L'ID de l'élément d'inventaire.",
|
||||
"The ID of the location.": "L'ID de l'emplacement.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Les valeurs positives augmentent l'inventaire, les valeurs négatives le diminuent.",
|
||||
"The ID of the order.": "L'ID de la prescription",
|
||||
"The ID of the product.": "L'ID du produit.",
|
||||
"The ID of the collection.": "L'ID de la collection.",
|
||||
"Whether the customer has verified their email.": "Si le client a vérifié son email.",
|
||||
"A string of comma-separated tags for filtering and search": "Une chaîne de tags séparés par des virgules pour le filtrage et la recherche",
|
||||
"The ID of the product to create the order with.": "L'ID du produit avec lequel créer la commande.",
|
||||
"The ID of the variant to create the order with.": "L'ID de la variante avec laquelle créer la commande.",
|
||||
"The ID of the customer to use.": "L'ID du client à utiliser.",
|
||||
"The ID of the fulfillment.": "L'ID de l'accomplissement.",
|
||||
"Product description (supports HTML)": "Description du produit (supporte HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Une catégorisation pour le produit utilisé pour le filtrage et la recherche de produits",
|
||||
"The public URL or the base64 image to use": "L'URL publique ou l'image base64 à utiliser",
|
||||
"The ID of the order to create a transaction for.": "L'ID de la commande pour laquelle créer une transaction.",
|
||||
"The ID of an associated transaction.": "L'ID d'une opération associée.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Une origine optionnelle de la transaction. Configurez sur externe pour importer une transaction en espèces pour la commande associée.",
|
||||
"Whether the transaction is a test transaction.": "Si la transaction est une transaction de test.",
|
||||
"The ID of the theme.": "L'ID du thème.",
|
||||
"The ID of the product variant.": "L'ID de la variante du produit.",
|
||||
"The ID of the transaction": "L'ID de la transaction",
|
||||
"1 makes it the main image.": "1 en fait l'image principale.",
|
||||
"Authorization headers are injected automatically from your connection.": "Les en-têtes d'autorisation sont injectés automatiquement à partir de votre connexion.",
|
||||
"Enable for files like PDFs, images, etc..": "Activer pour les fichiers comme les PDFs, les images, etc.",
|
||||
"Active": "Actif",
|
||||
"Draft": "Brouillon",
|
||||
"Archived": "Archivé",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "Nouveau paiement abandonné",
|
||||
"New Cancelled Order": "Nouvelle commande annulée",
|
||||
"New Customer": "Nouveau client",
|
||||
"New Order": "Nouvelle commande",
|
||||
"Updated Product": "Produit mis à jour",
|
||||
"New Paid Order": "Nouvelle commande payante",
|
||||
"Triggers when a checkout is abandoned.": "Déclenche lorsqu'un paiement est abandonné.",
|
||||
"Triggered when order is cancelled": "Déclenché lorsque la commande est annulée",
|
||||
"Triggered when a new customer is created": "Déclenché lorsqu'un nouveau client est créé",
|
||||
"Triggered when a new order is created": "Déclenché lorsqu'une nouvelle commande est créée",
|
||||
"Triggered when a product is updated.": "Déclenché quand un produit est mis à jour.",
|
||||
"Triggered when a paid order is created": "Déclenché lorsqu'une commande payante est créée"
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"Shopify": "Shopify",
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "Email",
|
||||
"Verified Email": "Verified Email",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "Tags",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "Title",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "Status",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "Description",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "Type",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "Source",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Active": "Active",
|
||||
"Draft": "Draft",
|
||||
"Archived": "Archived",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"Shopify": "Shopify",
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "Email",
|
||||
"Verified Email": "Email Terverifikasi",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "Tags",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "Title",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "Status",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "Description",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "Type",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "Source",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Active": "Aktif",
|
||||
"Draft": "Draf",
|
||||
"Archived": "Archived",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "オンラインストア用のEコマースプラットフォーム",
|
||||
"Shop Name": "ショップ名",
|
||||
"Admin Token": "管理トークン",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "在庫レベルを調整",
|
||||
"Cancel Order": "注文をキャンセル",
|
||||
"Close Order": "注文を閉じる",
|
||||
"Create Collect": "コレクションを作成",
|
||||
"Create Customer": "顧客を作成",
|
||||
"Create Draft Order": "ドラフト注文を作成",
|
||||
"Create Fulfillment Event": "フルフィルメントイベントを作成",
|
||||
"Create Order": "注文を作成",
|
||||
"Create Product": "商品を作成",
|
||||
"Create Transaction": "取引を作成",
|
||||
"Get Asset": "資産を取得する",
|
||||
"Get Customer": "顧客を取得",
|
||||
"Get Customers": "顧客を獲得する",
|
||||
"Get Customer Orders": "顧客注文の取得",
|
||||
"Get Fulfillment": "フルフィルメントを入手",
|
||||
"Get Fulfillments": "フルフィルメントを入手",
|
||||
"Get Locations": "位置情報を取得する",
|
||||
"Get Product": "商品を入手",
|
||||
"Get Product Variant": "製品バリアントを取得",
|
||||
"Get Products": "商品を入手",
|
||||
"Get Transaction": "トランザクションを取得",
|
||||
"Get Order Transactions": "注文トランザクションを取得する",
|
||||
"Update Customer": "顧客情報の更新",
|
||||
"Update Order": "注文を更新",
|
||||
"Update Product": "商品を更新",
|
||||
"Upload Product Image": "商品画像をアップロード",
|
||||
"Custom API Call": "カスタムAPI通話",
|
||||
"Adjust inventory level of an item at a location.": "場所のアイテムの在庫レベルを調整します。",
|
||||
"Cancel an order.": "注文をキャンセル",
|
||||
"Close an order.": "注文を閉じる",
|
||||
"Add a product to a collection.": "商品をコレクションに追加",
|
||||
"Create a new customer.": "新しい顧客を作成します。",
|
||||
"Create a new draft order.": "新しい下書き注文を作成します。",
|
||||
"Create a new fulfillment event.": "新しいフルフィルメントイベントを作成します。",
|
||||
"Create a new order.": "新規注文を作成",
|
||||
"Create a new product.": "新しい製品を作成します。",
|
||||
"Create a new transaction.": "新しいトランザクションを作成します。",
|
||||
"Get a theme's asset.": "テーマのアセットを取得します。",
|
||||
"Get an existing customer's information.": "既存の顧客情報を取得する",
|
||||
"Get an existing customers.": "既存の顧客を取得する",
|
||||
"Get an existing customer's orders.": "既存の顧客の注文を取得する",
|
||||
"Get a fulfillment.": "達成を得なさい。",
|
||||
"Get an order's fulfillments.": "注文の履行を取得します。",
|
||||
"Get locations.": "位置情報を取得します。",
|
||||
"Get existing product.": "既存の製品を取得します。",
|
||||
"Get a product variant.": "製品バリエーションを取得する",
|
||||
"Get existing products by title.": "既存の製品をタイトルで取得します。",
|
||||
"Get an existing transaction's information.": "既存の取引情報を取得します。",
|
||||
"Get an order's transactions.": "注文の取引を取得します。",
|
||||
"Update an existing customer.": "既存の顧客を更新する",
|
||||
"Update an existing order.": "既存の注文を更新します",
|
||||
"Update an existing product.": "既存の製品を更新",
|
||||
"Upload a new product image.": "新しい商品画像をアップロードします。",
|
||||
"Make a custom API call to a specific endpoint": "特定のエンドポイントへのカスタム API コールを実行します。",
|
||||
"Inventory Item": "在庫アイテム",
|
||||
"Location": "場所",
|
||||
"Adjustment": "調整",
|
||||
"Order": "ご注文",
|
||||
"Product": "商品",
|
||||
"Collection": "コレクション",
|
||||
"Email": "Eメールアドレス",
|
||||
"Verified Email": "確認済みのメール",
|
||||
"Send Email Invite": "招待メールを送信",
|
||||
"First Name": "名",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "電話番号",
|
||||
"Tags": "タグ",
|
||||
"Accepts Marketing ?": "マーケティングを承認しますか?",
|
||||
"Product Variant": "製品のバリエーション",
|
||||
"Title": "タイトル",
|
||||
"Quantity": "数量",
|
||||
"Price": "価格",
|
||||
"Customer": "顧客",
|
||||
"Fulfillment": "フルフィルメント",
|
||||
"Status": "Status",
|
||||
"Message": "メッセージ",
|
||||
"Send Receipt": "領収書を送信",
|
||||
"Send Fulfillment Receipt": "フルフィルメント領収書を送信",
|
||||
"Description": "Description",
|
||||
"Product Type": "製品タイプ",
|
||||
"Product Image": "商品画像",
|
||||
"Vendor": "仕入先",
|
||||
"Type": "タイプ",
|
||||
"Currency": "通貨",
|
||||
"Amount": "金額",
|
||||
"Authorization Key": "認証キー",
|
||||
"Parent ID": "親ID",
|
||||
"Source": "ソース",
|
||||
"Test": "テスト",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "テーマ",
|
||||
"Customer ID": "顧客 ID",
|
||||
"Transaction": "取引",
|
||||
"Note": "メモ",
|
||||
"Image": "画像",
|
||||
"Position": "位置",
|
||||
"Method": "方法",
|
||||
"Headers": "ヘッダー",
|
||||
"Query Parameters": "クエリパラメータ",
|
||||
"Body": "本文",
|
||||
"Response is Binary ?": "応答はバイナリですか?",
|
||||
"No Error on Failure": "失敗時にエラーはありません",
|
||||
"Timeout (in seconds)": "タイムアウト(秒)",
|
||||
"The ID of the inventory item.": "在庫アイテムのID。",
|
||||
"The ID of the location.": "場所のID。",
|
||||
"Positive values increase inventory, negative values decrease it.": "正の値は在庫を増やし、負の値はそれを減少させます。",
|
||||
"The ID of the order.": "注文のID",
|
||||
"The ID of the product.": "製品の ID",
|
||||
"The ID of the collection.": "コレクションのID。",
|
||||
"Whether the customer has verified their email.": "顧客がメールアドレスを確認したかどうか。",
|
||||
"A string of comma-separated tags for filtering and search": "フィルタリングと検索のためのカンマ区切りのタグの文字列",
|
||||
"The ID of the product to create the order with.": "注文を作成する製品の ID",
|
||||
"The ID of the variant to create the order with.": "注文を作成するバリアントのID。",
|
||||
"The ID of the customer to use.": "使用する顧客ID。",
|
||||
"The ID of the fulfillment.": "フルフィルメントのID。",
|
||||
"Product description (supports HTML)": "製品説明 (HTML をサポート)",
|
||||
"A categorization for the product used for filtering and searching products": "フィルタリングと検索に使用される製品の分類",
|
||||
"The public URL or the base64 image to use": "使用するパブリック URL または base64 イメージです",
|
||||
"The ID of the order to create a transaction for.": "トランザクションを作成する注文のID。",
|
||||
"The ID of an associated transaction.": "関連するトランザクションのID。",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "トランザクションの原産地を指定します。外部に設定すると、関連する注文の現金取引をインポートします。",
|
||||
"Whether the transaction is a test transaction.": "トランザクションがテストトランザクションかどうか。",
|
||||
"The ID of the theme.": "テーマのID。",
|
||||
"The ID of the product variant.": "製品バリエーションのID。",
|
||||
"The ID of the transaction": "取引のID",
|
||||
"1 makes it the main image.": "1はそれをメインイメージにします。",
|
||||
"Authorization headers are injected automatically from your connection.": "認証ヘッダは接続から自動的に注入されます。",
|
||||
"Enable for files like PDFs, images, etc..": "PDF、画像などのファイルを有効にします。",
|
||||
"Active": "有効",
|
||||
"Draft": "下書き",
|
||||
"Archived": "アーカイブ済み",
|
||||
"GET": "取得",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "削除",
|
||||
"HEAD": "頭",
|
||||
"New Abandoned Checkout": "新規放棄されたチェックアウト",
|
||||
"New Cancelled Order": "新しいキャンセルされた注文",
|
||||
"New Customer": "新規顧客",
|
||||
"New Order": "新規注文",
|
||||
"Updated Product": "更新された商品",
|
||||
"New Paid Order": "新しい有料注文",
|
||||
"Triggers when a checkout is abandoned.": "チェックアウトが放棄されたときにトリガーします。",
|
||||
"Triggered when order is cancelled": "注文がキャンセルされたときにトリガーされます",
|
||||
"Triggered when a new customer is created": "新規顧客が作成されたときにトリガーされます",
|
||||
"Triggered when a new order is created": "新しい注文が作成されたときにトリガーされます",
|
||||
"Triggered when a product is updated.": "商品が更新されたときにトリガーされます。",
|
||||
"Triggered when a paid order is created": "支払済み注文が作成されたときに発生します。"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Webwinkelplatform voor online winkels",
|
||||
"Shop Name": "Winkel naam",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Naam**:\n\nU kunt uw winkelnaam vinden in de url bijvoorbeeld, als de URL `https://voorbeeld is. yshopify.com/admin`, dan is uw winkelnaam **voorbeeld**.\n\n**Admin Token**:\n\n1. Inloggen op uw Shopify account\n2. Ga naar Instellingen -> Apps\n3. Klik op Develop apps\n4. Maak een app\n5. Vul de app naam in\n6. Klik op Configureren Admin API Scopes (Selecteer de volgende toepassings'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_read_products', 'write_draft_orders', 'read_draft_orders')\n7. Klik op Installatie-app\n8. Kopieer de Admin Toegangstoken\n",
|
||||
"Adjust Inventory Level": "Pas voorraad niveau aan",
|
||||
"Cancel Order": "Annuleer bestelling",
|
||||
"Close Order": "Sluit bestelling",
|
||||
"Create Collect": "Maak verzameling",
|
||||
"Create Customer": "Klant aanmaken",
|
||||
"Create Draft Order": "Conceptvolgorde aanmaken",
|
||||
"Create Fulfillment Event": "Maak Fulfillment Evenement",
|
||||
"Create Order": "Bestelling aanmaken",
|
||||
"Create Product": "Product aanmaken",
|
||||
"Create Transaction": "Transactie aanmaken",
|
||||
"Get Asset": "Bezitting ophalen",
|
||||
"Get Customer": "Klant ophalen",
|
||||
"Get Customers": "Klanten ophalen",
|
||||
"Get Customer Orders": "Klantbestellingen ophalen",
|
||||
"Get Fulfillment": "Verkrijg Vervulling",
|
||||
"Get Fulfillments": "Fulfillments verkrijgen",
|
||||
"Get Locations": "Verkrijg Locaties",
|
||||
"Get Product": "Product ophalen",
|
||||
"Get Product Variant": "Product Variant verkrijgen",
|
||||
"Get Products": "Producten ophalen",
|
||||
"Get Transaction": "Transactie ophalen",
|
||||
"Get Order Transactions": "Ophalen ordertransacties",
|
||||
"Update Customer": "Klant bijwerken",
|
||||
"Update Order": "Bestelling bijwerken",
|
||||
"Update Product": "Product bijwerken",
|
||||
"Upload Product Image": "Upload productafbeelding",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Pas het voorraadniveau van een item aan op een locatie.",
|
||||
"Cancel an order.": "Een bestelling annuleren.",
|
||||
"Close an order.": "Sluit een bestelling.",
|
||||
"Add a product to a collection.": "Voeg een product toe aan een collectie.",
|
||||
"Create a new customer.": "Maak een nieuwe klant aan.",
|
||||
"Create a new draft order.": "Maak een nieuwe kladorder aan.",
|
||||
"Create a new fulfillment event.": "Maak een nieuw afgehandelde gebeurtenis aan.",
|
||||
"Create a new order.": "Maak een nieuwe bestelling aan.",
|
||||
"Create a new product.": "Maak een nieuw product aan.",
|
||||
"Create a new transaction.": "Maak een nieuwe transactie.",
|
||||
"Get a theme's asset.": "Krijg het materiaal van een thema.",
|
||||
"Get an existing customer's information.": "Krijg bestaande klant informatie.",
|
||||
"Get an existing customers.": "Krijg een bestaande klanten.",
|
||||
"Get an existing customer's orders.": "Verkrijg de bestaande bestellingen van de klant.",
|
||||
"Get a fulfillment.": "Krijg een voltooiing.",
|
||||
"Get an order's fulfillments.": "Verkrijg de resultaten van een bestelling.",
|
||||
"Get locations.": "Krijg locaties.",
|
||||
"Get existing product.": "Bestaand product ophalen.",
|
||||
"Get a product variant.": "Verkrijg een product variant.",
|
||||
"Get existing products by title.": "Bestaande producten verkrijgen op titel.",
|
||||
"Get an existing transaction's information.": "Krijg een bestaande transactieinformatie.",
|
||||
"Get an order's transactions.": "Ontvang transacties van een bestelling.",
|
||||
"Update an existing customer.": "Een bestaande klant bijwerken.",
|
||||
"Update an existing order.": "Een bestaande bestelling bijwerken.",
|
||||
"Update an existing product.": "Een bestaand product bijwerken.",
|
||||
"Upload a new product image.": "Upload een nieuwe productafbeelding.",
|
||||
"Make a custom API call to a specific endpoint": "Maak een aangepaste API call naar een specifiek eindpunt",
|
||||
"Inventory Item": "Voorraad item",
|
||||
"Location": "Locatie",
|
||||
"Adjustment": "Aanpassing",
|
||||
"Order": "Bestelling",
|
||||
"Product": "product",
|
||||
"Collection": "Collectie",
|
||||
"Email": "E-mail",
|
||||
"Verified Email": "Geverifieerde e-mail",
|
||||
"Send Email Invite": "Stuur e-mail uitnodiging",
|
||||
"First Name": "Voornaam",
|
||||
"Last Name": "Achternaam",
|
||||
"Phone Number": "Telefoon nummer",
|
||||
"Tags": "Labels",
|
||||
"Accepts Marketing ?": "De marketing accepteren?",
|
||||
"Product Variant": "Product variant",
|
||||
"Title": "Aanspreektitel",
|
||||
"Quantity": "Aantal",
|
||||
"Price": "Prijs",
|
||||
"Customer": "Klant",
|
||||
"Fulfillment": "Vervulling",
|
||||
"Status": "status",
|
||||
"Message": "bericht",
|
||||
"Send Receipt": "Stuur ontvangstbewijs",
|
||||
"Send Fulfillment Receipt": "Stuur volledig betalingsbewijs",
|
||||
"Description": "Beschrijving",
|
||||
"Product Type": "Type product",
|
||||
"Product Image": "Product afbeelding",
|
||||
"Vendor": "Leverancier",
|
||||
"Type": "Type",
|
||||
"Currency": "valuta",
|
||||
"Amount": "Hoeveelheid",
|
||||
"Authorization Key": "Autorisatie sleutel",
|
||||
"Parent ID": "Bovenliggende ID",
|
||||
"Source": "Bron",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Thema",
|
||||
"Customer ID": "Klant ID",
|
||||
"Transaction": "Transactie",
|
||||
"Note": "Notitie",
|
||||
"Image": "Afbeelding",
|
||||
"Position": "Positie",
|
||||
"Method": "Methode",
|
||||
"Headers": "Kopteksten",
|
||||
"Query Parameters": "Query parameters",
|
||||
"Body": "Lichaam",
|
||||
"Response is Binary ?": "Antwoord is binair?",
|
||||
"No Error on Failure": "Geen fout bij fout",
|
||||
"Timeout (in seconds)": "Time-out (in seconden)",
|
||||
"The ID of the inventory item.": "De ID van het voorraadselitem.",
|
||||
"The ID of the location.": "Het ID van de locatie.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positieve waarden verhogen inventarisatie, negatieve waarden verlagen deze.",
|
||||
"The ID of the order.": "Het ID van de bestelling.",
|
||||
"The ID of the product.": "De ID van het product.",
|
||||
"The ID of the collection.": "Het ID van de collectie.",
|
||||
"Whether the customer has verified their email.": "Of de klant zijn e-mail heeft geverifieerd.",
|
||||
"A string of comma-separated tags for filtering and search": "Een string van komma-gescheiden tags voor filteren en zoeken",
|
||||
"The ID of the product to create the order with.": "Het ID van het product waarmee u de bestelling wilt aanmaken.",
|
||||
"The ID of the variant to create the order with.": "Het ID van de variant waarmee de bestelling wordt aangemaakt.",
|
||||
"The ID of the customer to use.": "Het ID van de klant om te gebruiken.",
|
||||
"The ID of the fulfillment.": "De ID van de afhandeling.",
|
||||
"Product description (supports HTML)": "Productbeschrijving (ondersteunt HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Een categorisatie voor het product dat gebruikt wordt voor het filteren en zoeken van producten",
|
||||
"The public URL or the base64 image to use": "De openbare URL of de base64 afbeelding die gebruikt moet worden",
|
||||
"The ID of the order to create a transaction for.": "Het ID van de bestelling voor het maken van een transactie.",
|
||||
"The ID of an associated transaction.": "Het ID van een gekoppelde transactie.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Een optionele oorsprong van de transactie. Stel in op extern om een transactie met contant geld te importeren voor de bijbehorende bestelling.",
|
||||
"Whether the transaction is a test transaction.": "Of de transactie een test transactie is.",
|
||||
"The ID of the theme.": "De ID van het thema.",
|
||||
"The ID of the product variant.": "Het ID van de product variant.",
|
||||
"The ID of the transaction": "Het ID van de transactie",
|
||||
"1 makes it the main image.": "1 maakt het tot de belangrijkste afbeelding.",
|
||||
"Authorization headers are injected automatically from your connection.": "Autorisatie headers worden automatisch geïnjecteerd vanuit uw verbinding.",
|
||||
"Enable for files like PDFs, images, etc..": "Inschakelen voor bestanden zoals PDF's, afbeeldingen etc..",
|
||||
"Active": "Actief",
|
||||
"Draft": "Concept",
|
||||
"Archived": "Gearchiveerd",
|
||||
"GET": "KRIJG",
|
||||
"POST": "POSTE",
|
||||
"PATCH": "BEKIJK",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "VERWIJDEREN",
|
||||
"HEAD": "HOOFD",
|
||||
"New Abandoned Checkout": "Nieuwe verlaten kassa",
|
||||
"New Cancelled Order": "Nieuwe geannuleerde bestelling",
|
||||
"New Customer": "Nieuwe klant",
|
||||
"New Order": "Nieuwe bestelling",
|
||||
"Updated Product": "Product bijgewerkt",
|
||||
"New Paid Order": "Nieuwe betaalde bestelling",
|
||||
"Triggers when a checkout is abandoned.": "Triggert wanneer een afrekening wordt verlaten.",
|
||||
"Triggered when order is cancelled": "Uitgelokt wanneer bestelling is geannuleerd",
|
||||
"Triggered when a new customer is created": "Uitgelokt wanneer een nieuwe klant wordt aangemaakt",
|
||||
"Triggered when a new order is created": "Uitgelokt wanneer een nieuwe order wordt aangemaakt",
|
||||
"Triggered when a product is updated.": "Uitgelokt wanneer een product wordt bijgewerkt.",
|
||||
"Triggered when a paid order is created": "Uitgelokt wanneer een betaalde bestelling is aangemaakt"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Plataforma de comércio eletrônico para lojas on-line",
|
||||
"Shop Name": "Nome da loja",
|
||||
"Admin Token": "Token Admin",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Nome da Loja**:\n\nVocê pode encontrar o nome da sua loja na url, por exemplo, se o URL for `https://example yshopify.com/admin`, então o nome da sua loja é **exemplo**.\n\n**Token de Admin**:\n\n1. Entre na sua conta de Shopify\n2. Vá para Configurações -> Apps\n3. Clique em desenvolver aplicativos\n4. Crie um aplicativo\n5. Preencha o nome do aplicativo\n6. Clique em Configurar Escopos API de Administrador (selecione os seguintes escopos 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Clique em instalar app\n8. Copie o Token de Acesso Admin\n",
|
||||
"Adjust Inventory Level": "Ajustar nível do inventário",
|
||||
"Cancel Order": "Cancelar ordem",
|
||||
"Close Order": "Fechar pedido",
|
||||
"Create Collect": "Criar Coletar",
|
||||
"Create Customer": "Criar Cliente",
|
||||
"Create Draft Order": "Criar pedido",
|
||||
"Create Fulfillment Event": "Criar Evento de Cumprimento",
|
||||
"Create Order": "Criar pedido",
|
||||
"Create Product": "Criar Produto",
|
||||
"Create Transaction": "Criar transação",
|
||||
"Get Asset": "Obter Bem",
|
||||
"Get Customer": "Obter Cliente",
|
||||
"Get Customers": "Obter Clientes",
|
||||
"Get Customer Orders": "Obter Pedidos de Clientes",
|
||||
"Get Fulfillment": "Obter satisfação",
|
||||
"Get Fulfillments": "Obter Cumprimentos",
|
||||
"Get Locations": "Obter Localizações",
|
||||
"Get Product": "Obter Produto",
|
||||
"Get Product Variant": "Obter variante do produto",
|
||||
"Get Products": "Obter produtos",
|
||||
"Get Transaction": "Obter transação",
|
||||
"Get Order Transactions": "Obter transações de pedidos",
|
||||
"Update Customer": "Atualizar Cliente",
|
||||
"Update Order": "Atualizar Ordem",
|
||||
"Update Product": "Atualização de Produto",
|
||||
"Upload Product Image": "Carregar imagem do produto",
|
||||
"Custom API Call": "Chamada de API personalizada",
|
||||
"Adjust inventory level of an item at a location.": "Ajuste o nível de inventário de um item em um local.",
|
||||
"Cancel an order.": "Cancele um pedido.",
|
||||
"Close an order.": "Fechar um pedido.",
|
||||
"Add a product to a collection.": "Adicionar um produto à coleção.",
|
||||
"Create a new customer.": "Criar um novo cliente.",
|
||||
"Create a new draft order.": "Criar um novo rascunho de pedido.",
|
||||
"Create a new fulfillment event.": "Criar um novo evento de cumprimento.",
|
||||
"Create a new order.": "Criar um novo pedido.",
|
||||
"Create a new product.": "Criar um novo produto.",
|
||||
"Create a new transaction.": "Cria uma nova transação.",
|
||||
"Get a theme's asset.": "Obtenha o ativo de um tema.",
|
||||
"Get an existing customer's information.": "Obter informações de um cliente existente.",
|
||||
"Get an existing customers.": "Consiga um cliente existente.",
|
||||
"Get an existing customer's orders.": "Obter ordens de um cliente existente.",
|
||||
"Get a fulfillment.": "Seja um cumprimento.",
|
||||
"Get an order's fulfillments.": "Obtenha os cumprimentos de um pedido.",
|
||||
"Get locations.": "Obter localizações.",
|
||||
"Get existing product.": "Obter produto existente.",
|
||||
"Get a product variant.": "Obter uma variante de produto.",
|
||||
"Get existing products by title.": "Obter produtos existentes por título.",
|
||||
"Get an existing transaction's information.": "Obtém a informação de uma transação existente.",
|
||||
"Get an order's transactions.": "Obtenha transações de um pedido.",
|
||||
"Update an existing customer.": "Atualizar um cliente existente.",
|
||||
"Update an existing order.": "Atualizar um pedido existente.",
|
||||
"Update an existing product.": "Atualizar um produto existente.",
|
||||
"Upload a new product image.": "Envie uma nova imagem do produto.",
|
||||
"Make a custom API call to a specific endpoint": "Faça uma chamada de API personalizada para um ponto de extremidade específico",
|
||||
"Inventory Item": "itens de estoque",
|
||||
"Location": "Local:",
|
||||
"Adjustment": "Ajuste",
|
||||
"Order": "Encomenda",
|
||||
"Product": "Produto:",
|
||||
"Collection": "Coleção",
|
||||
"Email": "e-mail",
|
||||
"Verified Email": "E-mail verificado",
|
||||
"Send Email Invite": "Enviar convite por e-mail",
|
||||
"First Name": "Nome",
|
||||
"Last Name": "Sobrenome",
|
||||
"Phone Number": "Número de telefone",
|
||||
"Tags": "Etiquetas",
|
||||
"Accepts Marketing ?": "Aceita Marketing ?",
|
||||
"Product Variant": "Variante do Produto",
|
||||
"Title": "Título",
|
||||
"Quantity": "Quantidade",
|
||||
"Price": "Quantidade",
|
||||
"Customer": "Cliente",
|
||||
"Fulfillment": "Cumprimento",
|
||||
"Status": "Estado",
|
||||
"Message": "mensagem",
|
||||
"Send Receipt": "Enviar recibo",
|
||||
"Send Fulfillment Receipt": "Enviar recibo de satisfação",
|
||||
"Description": "Descrição",
|
||||
"Product Type": "Tipo de Produto",
|
||||
"Product Image": "Imagem Produto",
|
||||
"Vendor": "Fornecedor",
|
||||
"Type": "tipo",
|
||||
"Currency": "moeda",
|
||||
"Amount": "Quantidade",
|
||||
"Authorization Key": "Chave de autorização",
|
||||
"Parent ID": "ID Pai",
|
||||
"Source": "fonte",
|
||||
"Test": "teste",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Tema",
|
||||
"Customer ID": "ID do cliente",
|
||||
"Transaction": "Transação",
|
||||
"Note": "Observação",
|
||||
"Image": "Imagem:",
|
||||
"Position": "Posição",
|
||||
"Method": "Método",
|
||||
"Headers": "Cabeçalhos",
|
||||
"Query Parameters": "Parâmetros da consulta",
|
||||
"Body": "Conteúdo",
|
||||
"Response is Binary ?": "A resposta é binária ?",
|
||||
"No Error on Failure": "Nenhum erro no Failure",
|
||||
"Timeout (in seconds)": "Tempo limite (em segundos)",
|
||||
"The ID of the inventory item.": "A ID do item de inventário.",
|
||||
"The ID of the location.": "O ID do local.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Valores positivos aumentam o inventário, valores negativos diminuem.",
|
||||
"The ID of the order.": "O ID do pedido.",
|
||||
"The ID of the product.": "O ID do produto.",
|
||||
"The ID of the collection.": "O ID da coleção.",
|
||||
"Whether the customer has verified their email.": "Se o cliente verificou o seu e-mail.",
|
||||
"A string of comma-separated tags for filtering and search": "Uma sequência de tags separadas por vírgulas para filtragem e busca",
|
||||
"The ID of the product to create the order with.": "O ID do produto com o qual será criado o pedido.",
|
||||
"The ID of the variant to create the order with.": "O ID da variante para criar o pedido.",
|
||||
"The ID of the customer to use.": "O ID do cliente a ser usado.",
|
||||
"The ID of the fulfillment.": "A identificação do cumprimento.",
|
||||
"Product description (supports HTML)": "Descrição do produto (suporta HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Uma categorização para o produto usado para filtrar e pesquisar produtos",
|
||||
"The public URL or the base64 image to use": "A URL pública ou a imagem base64 a ser usada",
|
||||
"The ID of the order to create a transaction for.": "A ID do pedido para criar uma transação para.",
|
||||
"The ID of an associated transaction.": "O ID de uma transação associada.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Uma origem opcional da transação. Defina como externa para importar uma transação de caixa para o pedido associado.",
|
||||
"Whether the transaction is a test transaction.": "Se a transação é uma transação de teste.",
|
||||
"The ID of the theme.": "O ID do tema.",
|
||||
"The ID of the product variant.": "O ID da variante do produto.",
|
||||
"The ID of the transaction": "A ID da transação",
|
||||
"1 makes it the main image.": "1 faz dela a principal imagem.",
|
||||
"Authorization headers are injected automatically from your connection.": "Os cabeçalhos de autorização são inseridos automaticamente a partir da sua conexão.",
|
||||
"Enable for files like PDFs, images, etc..": "Habilitar para arquivos como PDFs, imagens, etc..",
|
||||
"Active": "Ativo",
|
||||
"Draft": "Rascunho",
|
||||
"Archived": "Arquivado",
|
||||
"GET": "OBTER",
|
||||
"POST": "POSTAR",
|
||||
"PATCH": "COMPRAR",
|
||||
"PUT": "COLOCAR",
|
||||
"DELETE": "EXCLUIR",
|
||||
"HEAD": "CABEÇA",
|
||||
"New Abandoned Checkout": "Novo Checkout Abandonado",
|
||||
"New Cancelled Order": "Novo pedido cancelado",
|
||||
"New Customer": "Novo Cliente",
|
||||
"New Order": "Novo Pedido",
|
||||
"Updated Product": "Produto atualizado",
|
||||
"New Paid Order": "Novo Pedido Pago",
|
||||
"Triggers when a checkout is abandoned.": "Dispara quando um check-out é abandonado.",
|
||||
"Triggered when order is cancelled": "Acionada quando a ordem é cancelada",
|
||||
"Triggered when a new customer is created": "Acionada quando um novo cliente é criado",
|
||||
"Triggered when a new order is created": "Acionada quando uma nova ordem é criada",
|
||||
"Triggered when a product is updated.": "Acionada quando um produto é atualizado.",
|
||||
"Triggered when a paid order is created": "Acionada quando uma ordem paga é criada"
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"Shopify": "Магазин",
|
||||
"Ecommerce platform for online stores": "Электронная платформа для интернет-магазинов",
|
||||
"Shop Name": "Название магазина",
|
||||
"Admin Token": "Маркер администратора",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Название магазина**:\n\nНазвание магазина можно найти в url Например, если URL-адрес `https://example. yshopify.com/admin`, то название вашего магазина **example**.\n\n**Admin Token**:\n\n1. Войдите в свой аккаунт Shopify\n2. Перейдите в Настройки -> Приложения\n3. Нажмите на Разработку приложений\n4. Создайте приложение\n5. Заполните имя приложения\n6. Нажмите на Настроить API администратора (выберите следующие области 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Нажмите на кнопку Install app\n8. Скопируйте маркер доступа администратора\n",
|
||||
"Adjust Inventory Level": "Настроить уровень инвентаря",
|
||||
"Cancel Order": "Отменить заказ",
|
||||
"Close Order": "Закрыть заказ",
|
||||
"Create Collect": "Создать сбор",
|
||||
"Create Customer": "Создать клиента",
|
||||
"Create Draft Order": "Создать порядок черновиков",
|
||||
"Create Fulfillment Event": "Создать Заполнение",
|
||||
"Create Order": "Создать заказ",
|
||||
"Create Product": "Создать продукт",
|
||||
"Create Transaction": "Создать транзакцию",
|
||||
"Get Asset": "Получить актив",
|
||||
"Get Customer": "Получить клиента",
|
||||
"Get Customers": "Получить клиентов",
|
||||
"Get Customer Orders": "Получение заказов клиента",
|
||||
"Get Fulfillment": "Получить автозаполнение",
|
||||
"Get Fulfillments": "Получать заказы",
|
||||
"Get Locations": "Получить местоположение",
|
||||
"Get Product": "Получить продукт",
|
||||
"Get Product Variant": "Получить вариант продукта",
|
||||
"Get Products": "Получить товары",
|
||||
"Get Transaction": "Получить транзакцию",
|
||||
"Get Order Transactions": "Получить операции с заказами",
|
||||
"Update Customer": "Обновить клиента",
|
||||
"Update Order": "Изменить порядок",
|
||||
"Update Product": "Обновить продукт",
|
||||
"Upload Product Image": "Загрузить изображение товара",
|
||||
"Custom API Call": "Пользовательский вызов API",
|
||||
"Adjust inventory level of an item at a location.": "Регулировка уровня инвентаря предмета.",
|
||||
"Cancel an order.": "Отменить заказ.",
|
||||
"Close an order.": "Закрыть заказ.",
|
||||
"Add a product to a collection.": "Добавить продукт в коллекцию.",
|
||||
"Create a new customer.": "Создать нового клиента.",
|
||||
"Create a new draft order.": "Создать новый заказ черновика.",
|
||||
"Create a new fulfillment event.": "Создать новое событие выполнения заказа.",
|
||||
"Create a new order.": "Создать новый заказ.",
|
||||
"Create a new product.": "Создать новый товар.",
|
||||
"Create a new transaction.": "Создать новую транзакцию.",
|
||||
"Get a theme's asset.": "Получить медиафайл темы.",
|
||||
"Get an existing customer's information.": "Получить информацию о покупателе.",
|
||||
"Get an existing customers.": "Получить существующих клиентов.",
|
||||
"Get an existing customer's orders.": "Получить существующие заказы клиента.",
|
||||
"Get a fulfillment.": "Получить платеж.",
|
||||
"Get an order's fulfillments.": "Получить выполнение заказа.",
|
||||
"Get locations.": "Получить местоположение.",
|
||||
"Get existing product.": "Получить существующий товар.",
|
||||
"Get a product variant.": "Получить вариант товара.",
|
||||
"Get existing products by title.": "Получать существующие товары по названию.",
|
||||
"Get an existing transaction's information.": "Получить информацию о существующей транзакции.",
|
||||
"Get an order's transactions.": "Получить транзакции по заказу.",
|
||||
"Update an existing customer.": "Обновить существующего клиента.",
|
||||
"Update an existing order.": "Обновить существующий заказ.",
|
||||
"Update an existing product.": "Обновить существующий товар.",
|
||||
"Upload a new product image.": "Загрузить новое изображение товара.",
|
||||
"Make a custom API call to a specific endpoint": "Сделать пользовательский API вызов к определенной конечной точке",
|
||||
"Inventory Item": "Предмет инвентаря",
|
||||
"Location": "Местоположение",
|
||||
"Adjustment": "Корректировка",
|
||||
"Order": "Заказ",
|
||||
"Product": "Товар",
|
||||
"Collection": "Коллекция",
|
||||
"Email": "Почта",
|
||||
"Verified Email": "Подтверждённый Email",
|
||||
"Send Email Invite": "Отправить приглашение по электронной почте",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Номер телефона",
|
||||
"Tags": "Теги",
|
||||
"Product Variant": "Вариант продукта",
|
||||
"Title": "Заголовок",
|
||||
"Quantity": "Количество",
|
||||
"Price": "Цена",
|
||||
"Customer": "Покупатель",
|
||||
"Fulfillment": "Закупка",
|
||||
"Status": "Status",
|
||||
"Message": "Сообщение",
|
||||
"Send Receipt": "Отправить квитанцию",
|
||||
"Send Fulfillment Receipt": "Отправить квитанцию о покупке",
|
||||
"Description": "Description",
|
||||
"Product Type": "Тип товара",
|
||||
"Product Image": "Изображение товара",
|
||||
"Vendor": "Поставщик",
|
||||
"Type": "Тип",
|
||||
"Currency": "Валюта",
|
||||
"Amount": "Сумма",
|
||||
"Authorization Key": "Ключ авторизации",
|
||||
"Parent ID": "Родительский ID",
|
||||
"Source": "Источник",
|
||||
"Test": "Тест",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Тема",
|
||||
"Customer ID": "ID клиента",
|
||||
"Transaction": "Транзакция",
|
||||
"Note": "Примечание",
|
||||
"Image": "Изображение",
|
||||
"Position": "Позиция",
|
||||
"Method": "Метод",
|
||||
"Headers": "Заголовки",
|
||||
"Query Parameters": "Параметры запроса",
|
||||
"Body": "Тело",
|
||||
"No Error on Failure": "Нет ошибок при ошибке",
|
||||
"Timeout (in seconds)": "Таймаут (в секундах)",
|
||||
"The ID of the inventory item.": "Идентификатор товара в инвентаре.",
|
||||
"The ID of the location.": "ID местоположения.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Положительные значения повышают запасы, отрицательные значения уменьшают его.",
|
||||
"The ID of the order.": "ID заказа.",
|
||||
"The ID of the product.": "ID товара.",
|
||||
"The ID of the collection.": "Идентификатор коллекции.",
|
||||
"Whether the customer has verified their email.": "Проверяет ли клиент свой адрес электронной почты.",
|
||||
"A string of comma-separated tags for filtering and search": "Строка тегов, разделенных запятыми для фильтрации и поиска",
|
||||
"The ID of the product to create the order with.": "ID товара для создания заказа.",
|
||||
"The ID of the variant to create the order with.": "Идентификатор варианта для создания заказа.",
|
||||
"The ID of the customer to use.": "ID используемого клиента.",
|
||||
"The ID of the fulfillment.": "Идентификатор исполнения.",
|
||||
"Product description (supports HTML)": "Описание товара (поддерживает HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "Категория для продукта, используемого для фильтрации и поиска продуктов",
|
||||
"The public URL or the base64 image to use": "Публичный URL или изображение base64 для использования",
|
||||
"The ID of the order to create a transaction for.": "ID ордера для создания транзакции.",
|
||||
"The ID of an associated transaction.": "ID связанной транзакции.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "Необязательный источник транзакции. Установите внешний для импорта операции с наличными для соответствующего заказа.",
|
||||
"Whether the transaction is a test transaction.": "Является ли транзакция тестовой транзакцией.",
|
||||
"The ID of the theme.": "Идентификатор темы.",
|
||||
"The ID of the product variant.": "Идентификатор варианта продукта.",
|
||||
"The ID of the transaction": "ID транзакции",
|
||||
"1 makes it the main image.": "1 делает его главным изображением.",
|
||||
"Authorization headers are injected automatically from your connection.": "Заголовки авторизации включаются автоматически из вашего соединения.",
|
||||
"Active": "Активен",
|
||||
"Draft": "Черновик",
|
||||
"Archived": "Архивировано",
|
||||
"GET": "ПОЛУЧИТЬ",
|
||||
"POST": "ПОСТ",
|
||||
"PATCH": "ПАТЧ",
|
||||
"PUT": "ПОКУПИТЬ",
|
||||
"DELETE": "УДАЛИТЬ",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "Новый брошенный заказ",
|
||||
"New Cancelled Order": "Новый отмененный заказ",
|
||||
"New Customer": "Новый клиент",
|
||||
"New Order": "Новый заказ",
|
||||
"Updated Product": "Обновленный товар",
|
||||
"New Paid Order": "Новый платный заказ",
|
||||
"Triggers when a checkout is abandoned.": "Триггеры при отмене заказа.",
|
||||
"Triggered when order is cancelled": "Срабатывает при отмене заказа",
|
||||
"Triggered when a new customer is created": "Срабатывает при создании нового клиента",
|
||||
"Triggered when a new order is created": "Срабатывает при создании нового заказа",
|
||||
"Triggered when a product is updated.": "Срабатывает при обновлении продукта.",
|
||||
"Triggered when a paid order is created": "Срабатывает при создании оплаченного заказа"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "Email",
|
||||
"Verified Email": "Verified Email",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "Tags",
|
||||
"Accepts Marketing ?": "Accepts Marketing ?",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "Title",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "Status",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "Description",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "Type",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "Source",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"Response is Binary ?": "Response is Binary ?",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
|
||||
"Active": "Active",
|
||||
"Draft": "Draft",
|
||||
"Archived": "Archived",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
{
|
||||
"Shopify": "Shopify",
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "Custom API Call",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "Make a custom API call to a specific endpoint",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "Email",
|
||||
"Verified Email": "Email đã được xác minh",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "Last Name",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "Tags",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "Title",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "Status",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "Description",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "Type",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "Source",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "Note",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "Method",
|
||||
"Headers": "Headers",
|
||||
"Query Parameters": "Query Parameters",
|
||||
"Body": "Body",
|
||||
"No Error on Failure": "No Error on Failure",
|
||||
"Timeout (in seconds)": "Timeout (in seconds)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "Authorization headers are injected automatically from your connection.",
|
||||
"Active": "Tích cực",
|
||||
"Draft": "Bản nháp",
|
||||
"Archived": "Archived",
|
||||
"GET": "GET",
|
||||
"POST": "POST",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "PUT",
|
||||
"DELETE": "DELETE",
|
||||
"HEAD": "HEAD",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
{
|
||||
"Ecommerce platform for online stores": "Ecommerce platform for online stores",
|
||||
"Shop Name": "Shop Name",
|
||||
"Admin Token": "Admin Token",
|
||||
"\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')": "\n**Shop Name**:\n\nYou can find your shop name in the url For example, if the URL is `https://example.myshopify.com/admin`, then your shop name is **example**.\n\n**Admin Token**:\n\n1. Login to your Shopify account\n2. Go to Settings -> Apps\n3. Click on Develop apps\n4. Create an App\n5. Fill the app name\n6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')\n7. Click on Install app\n8. Copy the Admin Access Token\n",
|
||||
"Adjust Inventory Level": "Adjust Inventory Level",
|
||||
"Cancel Order": "Cancel Order",
|
||||
"Close Order": "Close Order",
|
||||
"Create Collect": "Create Collect",
|
||||
"Create Customer": "Create Customer",
|
||||
"Create Draft Order": "Create Draft Order",
|
||||
"Create Fulfillment Event": "Create Fulfillment Event",
|
||||
"Create Order": "Create Order",
|
||||
"Create Product": "Create Product",
|
||||
"Create Transaction": "Create Transaction",
|
||||
"Get Asset": "Get Asset",
|
||||
"Get Customer": "Get Customer",
|
||||
"Get Customers": "Get Customers",
|
||||
"Get Customer Orders": "Get Customer Orders",
|
||||
"Get Fulfillment": "Get Fulfillment",
|
||||
"Get Fulfillments": "Get Fulfillments",
|
||||
"Get Locations": "Get Locations",
|
||||
"Get Product": "Get Product",
|
||||
"Get Product Variant": "Get Product Variant",
|
||||
"Get Products": "Get Products",
|
||||
"Get Transaction": "Get Transaction",
|
||||
"Get Order Transactions": "Get Order Transactions",
|
||||
"Update Customer": "Update Customer",
|
||||
"Update Order": "Update Order",
|
||||
"Update Product": "Update Product",
|
||||
"Upload Product Image": "Upload Product Image",
|
||||
"Custom API Call": "自定义 API 呼叫",
|
||||
"Adjust inventory level of an item at a location.": "Adjust inventory level of an item at a location.",
|
||||
"Cancel an order.": "Cancel an order.",
|
||||
"Close an order.": "Close an order.",
|
||||
"Add a product to a collection.": "Add a product to a collection.",
|
||||
"Create a new customer.": "Create a new customer.",
|
||||
"Create a new draft order.": "Create a new draft order.",
|
||||
"Create a new fulfillment event.": "Create a new fulfillment event.",
|
||||
"Create a new order.": "Create a new order.",
|
||||
"Create a new product.": "Create a new product.",
|
||||
"Create a new transaction.": "Create a new transaction.",
|
||||
"Get a theme's asset.": "Get a theme's asset.",
|
||||
"Get an existing customer's information.": "Get an existing customer's information.",
|
||||
"Get an existing customers.": "Get an existing customers.",
|
||||
"Get an existing customer's orders.": "Get an existing customer's orders.",
|
||||
"Get a fulfillment.": "Get a fulfillment.",
|
||||
"Get an order's fulfillments.": "Get an order's fulfillments.",
|
||||
"Get locations.": "Get locations.",
|
||||
"Get existing product.": "Get existing product.",
|
||||
"Get a product variant.": "Get a product variant.",
|
||||
"Get existing products by title.": "Get existing products by title.",
|
||||
"Get an existing transaction's information.": "Get an existing transaction's information.",
|
||||
"Get an order's transactions.": "Get an order's transactions.",
|
||||
"Update an existing customer.": "Update an existing customer.",
|
||||
"Update an existing order.": "Update an existing order.",
|
||||
"Update an existing product.": "Update an existing product.",
|
||||
"Upload a new product image.": "Upload a new product image.",
|
||||
"Make a custom API call to a specific endpoint": "将一个自定义 API 调用到一个特定的终点",
|
||||
"Inventory Item": "Inventory Item",
|
||||
"Location": "Location",
|
||||
"Adjustment": "Adjustment",
|
||||
"Order": "Order",
|
||||
"Product": "Product",
|
||||
"Collection": "Collection",
|
||||
"Email": "电子邮件地址",
|
||||
"Verified Email": "邮箱已验证",
|
||||
"Send Email Invite": "Send Email Invite",
|
||||
"First Name": "First Name",
|
||||
"Last Name": "名字",
|
||||
"Phone Number": "Phone Number",
|
||||
"Tags": "标签",
|
||||
"Accepts Marketing ?": "Accepts Marketing ?",
|
||||
"Product Variant": "Product Variant",
|
||||
"Title": "标题",
|
||||
"Quantity": "Quantity",
|
||||
"Price": "Price",
|
||||
"Customer": "Customer",
|
||||
"Fulfillment": "Fulfillment",
|
||||
"Status": "状态",
|
||||
"Message": "Message",
|
||||
"Send Receipt": "Send Receipt",
|
||||
"Send Fulfillment Receipt": "Send Fulfillment Receipt",
|
||||
"Description": "描述",
|
||||
"Product Type": "Product Type",
|
||||
"Product Image": "Product Image",
|
||||
"Vendor": "Vendor",
|
||||
"Type": "类型",
|
||||
"Currency": "Currency",
|
||||
"Amount": "Amount",
|
||||
"Authorization Key": "Authorization Key",
|
||||
"Parent ID": "Parent ID",
|
||||
"Source": "来源",
|
||||
"Test": "Test",
|
||||
"Asset Key": "Asset Key",
|
||||
"Theme": "Theme",
|
||||
"Customer ID": "Customer ID",
|
||||
"Transaction": "Transaction",
|
||||
"Note": "说明",
|
||||
"Image": "Image",
|
||||
"Position": "Position",
|
||||
"Method": "方法",
|
||||
"Headers": "信头",
|
||||
"Query Parameters": "查询参数",
|
||||
"Body": "正文内容",
|
||||
"Response is Binary ?": "Response is Binary ?",
|
||||
"No Error on Failure": "失败时没有错误",
|
||||
"Timeout (in seconds)": "超时(秒)",
|
||||
"The ID of the inventory item.": "The ID of the inventory item.",
|
||||
"The ID of the location.": "The ID of the location.",
|
||||
"Positive values increase inventory, negative values decrease it.": "Positive values increase inventory, negative values decrease it.",
|
||||
"The ID of the order.": "The ID of the order.",
|
||||
"The ID of the product.": "The ID of the product.",
|
||||
"The ID of the collection.": "The ID of the collection.",
|
||||
"Whether the customer has verified their email.": "Whether the customer has verified their email.",
|
||||
"A string of comma-separated tags for filtering and search": "A string of comma-separated tags for filtering and search",
|
||||
"The ID of the product to create the order with.": "The ID of the product to create the order with.",
|
||||
"The ID of the variant to create the order with.": "The ID of the variant to create the order with.",
|
||||
"The ID of the customer to use.": "The ID of the customer to use.",
|
||||
"The ID of the fulfillment.": "The ID of the fulfillment.",
|
||||
"Product description (supports HTML)": "Product description (supports HTML)",
|
||||
"A categorization for the product used for filtering and searching products": "A categorization for the product used for filtering and searching products",
|
||||
"The public URL or the base64 image to use": "The public URL or the base64 image to use",
|
||||
"The ID of the order to create a transaction for.": "The ID of the order to create a transaction for.",
|
||||
"The ID of an associated transaction.": "The ID of an associated transaction.",
|
||||
"An optional origin of the transaction. Set to external to import a cash transaction for the associated order.": "An optional origin of the transaction. Set to external to import a cash transaction for the associated order.",
|
||||
"Whether the transaction is a test transaction.": "Whether the transaction is a test transaction.",
|
||||
"The ID of the theme.": "The ID of the theme.",
|
||||
"The ID of the product variant.": "The ID of the product variant.",
|
||||
"The ID of the transaction": "The ID of the transaction",
|
||||
"1 makes it the main image.": "1 makes it the main image.",
|
||||
"Authorization headers are injected automatically from your connection.": "授权头自动从您的连接中注入。",
|
||||
"Enable for files like PDFs, images, etc..": "Enable for files like PDFs, images, etc..",
|
||||
"Active": "使用中",
|
||||
"Draft": "草稿",
|
||||
"Archived": "Archived",
|
||||
"GET": "获取",
|
||||
"POST": "帖子",
|
||||
"PATCH": "PATCH",
|
||||
"PUT": "弹出",
|
||||
"DELETE": "删除",
|
||||
"HEAD": "黑色",
|
||||
"New Abandoned Checkout": "New Abandoned Checkout",
|
||||
"New Cancelled Order": "New Cancelled Order",
|
||||
"New Customer": "New Customer",
|
||||
"New Order": "New Order",
|
||||
"Updated Product": "Updated Product",
|
||||
"New Paid Order": "New Paid Order",
|
||||
"Triggers when a checkout is abandoned.": "Triggers when a checkout is abandoned.",
|
||||
"Triggered when order is cancelled": "Triggered when order is cancelled",
|
||||
"Triggered when a new customer is created": "Triggered when a new customer is created",
|
||||
"Triggered when a new order is created": "Triggered when a new order is created",
|
||||
"Triggered when a product is updated.": "Triggered when a product is updated.",
|
||||
"Triggered when a paid order is created": "Triggered when a paid order is created"
|
||||
}
|
||||
153
activepieces-fork/packages/pieces/community/shopify/src/index.ts
Normal file
153
activepieces-fork/packages/pieces/community/shopify/src/index.ts
Normal file
@@ -0,0 +1,153 @@
|
||||
import {
|
||||
HttpMethod,
|
||||
createCustomApiCallAction,
|
||||
} from '@activepieces/pieces-common';
|
||||
import {
|
||||
PieceAuth,
|
||||
Property,
|
||||
createPiece,
|
||||
} from '@activepieces/pieces-framework';
|
||||
import { AppConnectionType, PieceCategory } from '@activepieces/shared';
|
||||
import { adjustInventoryLevelAction } from './lib/actions/adjust-inventory-level';
|
||||
import { cancelOrderAction } from './lib/actions/cancel-order';
|
||||
import { closeOrderAction } from './lib/actions/close-order';
|
||||
import { createCollectAction } from './lib/actions/create-collect';
|
||||
import { createCustomerAction } from './lib/actions/create-customer';
|
||||
import { createDraftOrderAction } from './lib/actions/create-draft-order';
|
||||
import { createFulfillmentEventAction } from './lib/actions/create-fulfillment-event';
|
||||
import { createOrderAction } from './lib/actions/create-order';
|
||||
import { createProductAction } from './lib/actions/create-product';
|
||||
import { createTransactionAction } from './lib/actions/create-transaction';
|
||||
import { getAssetAction } from './lib/actions/get-asset';
|
||||
import { getCustomerAction } from './lib/actions/get-customer';
|
||||
import { getCustomersAction } from './lib/actions/get-customers';
|
||||
import { getCustomerOrdersAction } from './lib/actions/get-customer-orders';
|
||||
import { getFulfillmentAction } from './lib/actions/get-fulfillment';
|
||||
import { getFulfillmentsAction } from './lib/actions/get-fulfillments';
|
||||
import { getLocationsAction } from './lib/actions/get-locations';
|
||||
import { getProductAction } from './lib/actions/get-product';
|
||||
import { getProductVariantAction } from './lib/actions/get-product-variant';
|
||||
import { getProductsAction } from './lib/actions/get-products';
|
||||
import { getTransactionAction } from './lib/actions/get-transaction';
|
||||
import { getTransactionsAction } from './lib/actions/get-transactions';
|
||||
import { updateCustomerAction } from './lib/actions/update-customer';
|
||||
import { updateOrderAction } from './lib/actions/update-order';
|
||||
import { updateProductAction } from './lib/actions/update-product';
|
||||
import { uploadProductImageAction } from './lib/actions/upload-product-image';
|
||||
import { getBaseUrl, sendShopifyRequest } from './lib/common';
|
||||
import { newAbandonedCheckout } from './lib/triggers/new-abandoned-checkout';
|
||||
import { newCancelledOrder } from './lib/triggers/new-cancelled-order';
|
||||
import { newCustomer } from './lib/triggers/new-customer';
|
||||
import { newOrder } from './lib/triggers/new-order';
|
||||
import { newPaidOrder } from './lib/triggers/new-paid-order';
|
||||
import { updatedProduct } from './lib/triggers/updated-product';
|
||||
|
||||
const markdown = `
|
||||
**Shop Name**:
|
||||
|
||||
You can find your shop name in the url For example, if the URL is \`https://example.myshopify.com/admin\`, then your shop name is **example**.
|
||||
|
||||
**Admin Token**:
|
||||
|
||||
1. Login to your Shopify account
|
||||
2. Go to Settings -> Apps
|
||||
3. Click on Develop apps
|
||||
4. Create an App
|
||||
5. Fill the app name
|
||||
6. Click on Configure Admin API Scopes (Select the following scopes 'read_orders', 'write_orders', 'write_customers', 'read_customers', 'write_products', 'read_products', 'write_draft_orders', 'read_draft_orders')
|
||||
7. Click on Install app
|
||||
8. Copy the Admin Access Token
|
||||
`;
|
||||
|
||||
export const shopifyAuth = PieceAuth.CustomAuth({
|
||||
description: markdown,
|
||||
required: true,
|
||||
props: {
|
||||
shopName: Property.ShortText({
|
||||
displayName: 'Shop Name',
|
||||
required: true,
|
||||
}),
|
||||
adminToken: PieceAuth.SecretText({
|
||||
displayName: 'Admin Token',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
validate: async ({ auth }) => {
|
||||
try {
|
||||
await sendShopifyRequest({
|
||||
auth: {
|
||||
type: AppConnectionType.CUSTOM_AUTH,
|
||||
props: auth,
|
||||
},
|
||||
method: HttpMethod.GET,
|
||||
url: '/shop.json',
|
||||
});
|
||||
return {
|
||||
valid: true,
|
||||
};
|
||||
} catch (e) {
|
||||
return {
|
||||
valid: false,
|
||||
error: 'Invalid Shop Name or Admin Token',
|
||||
};
|
||||
}
|
||||
},
|
||||
});
|
||||
|
||||
export const shopify = createPiece({
|
||||
displayName: 'Shopify',
|
||||
description: 'Ecommerce platform for online stores',
|
||||
logoUrl: 'https://cdn.activepieces.com/pieces/shopify.png',
|
||||
authors: ["kishanprmr","MoShizzle","AbdulTheActivePiecer","khaledmashaly","abuaboud","ikus060"],
|
||||
categories: [PieceCategory.COMMERCE],
|
||||
minimumSupportedRelease: '0.30.0',
|
||||
auth: shopifyAuth,
|
||||
actions: [
|
||||
adjustInventoryLevelAction,
|
||||
cancelOrderAction,
|
||||
closeOrderAction,
|
||||
createCollectAction,
|
||||
createCustomerAction,
|
||||
createDraftOrderAction,
|
||||
createFulfillmentEventAction,
|
||||
createOrderAction,
|
||||
createProductAction,
|
||||
createTransactionAction,
|
||||
getAssetAction,
|
||||
getCustomerAction,
|
||||
getCustomersAction,
|
||||
getCustomerOrdersAction,
|
||||
getFulfillmentAction,
|
||||
getFulfillmentsAction,
|
||||
getLocationsAction,
|
||||
getProductAction,
|
||||
getProductVariantAction,
|
||||
getProductsAction,
|
||||
getTransactionAction,
|
||||
getTransactionsAction,
|
||||
updateCustomerAction,
|
||||
updateOrderAction,
|
||||
updateProductAction,
|
||||
uploadProductImageAction,
|
||||
createCustomApiCallAction({
|
||||
baseUrl: (auth) => {
|
||||
return auth ? getBaseUrl(auth.props.shopName) : '';
|
||||
},
|
||||
auth: shopifyAuth,
|
||||
authMapping: async (auth) => {
|
||||
const typedAuth = auth.props.adminToken;
|
||||
return {
|
||||
'X-Shopify-Access-Token': typedAuth,
|
||||
};
|
||||
},
|
||||
}),
|
||||
],
|
||||
triggers: [
|
||||
newAbandonedCheckout,
|
||||
newCancelledOrder,
|
||||
newCustomer,
|
||||
newOrder,
|
||||
updatedProduct,
|
||||
newPaidOrder,
|
||||
],
|
||||
});
|
||||
@@ -0,0 +1,33 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { adjustInventoryLevel } from '../common';
|
||||
|
||||
export const adjustInventoryLevelAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'adjust_inventory_level',
|
||||
displayName: 'Adjust Inventory Level',
|
||||
description: `Adjust inventory level of an item at a location.`,
|
||||
props: {
|
||||
id: Property.Number({
|
||||
displayName: 'Inventory Item',
|
||||
description: 'The ID of the inventory item.',
|
||||
required: true,
|
||||
}),
|
||||
locationId: Property.Number({
|
||||
displayName: 'Location',
|
||||
description: 'The ID of the location.',
|
||||
required: true,
|
||||
}),
|
||||
adjustment: Property.Number({
|
||||
displayName: 'Adjustment',
|
||||
description:
|
||||
'Positive values increase inventory, negative values decrease it.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id, locationId, adjustment } = propsValue;
|
||||
|
||||
return await adjustInventoryLevel(id, locationId, adjustment, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { cancelOrder } from '../common';
|
||||
|
||||
export const cancelOrderAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'cancel_order',
|
||||
displayName: 'Cancel Order',
|
||||
description: `Cancel an order.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId } = propsValue;
|
||||
|
||||
return await cancelOrder(orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { closeOrder } from '../common';
|
||||
|
||||
export const closeOrderAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'close_order',
|
||||
displayName: 'Close Order',
|
||||
description: `Close an order.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId } = propsValue;
|
||||
|
||||
return await closeOrder(orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,33 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createCollect } from '../common';
|
||||
|
||||
export const createCollectAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_collect',
|
||||
displayName: 'Create Collect',
|
||||
description: `Add a product to a collection.`,
|
||||
props: {
|
||||
id: Property.Number({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product.',
|
||||
required: true,
|
||||
}),
|
||||
collectionId: Property.Number({
|
||||
displayName: 'Collection',
|
||||
description: 'The ID of the collection.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id, collectionId } = propsValue;
|
||||
|
||||
return await createCollect(
|
||||
{
|
||||
product_id: id,
|
||||
collection_id: collectionId,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,80 @@
|
||||
import {
|
||||
Property,
|
||||
createAction,
|
||||
} from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createCustomer } from '../common';
|
||||
|
||||
export const createCustomerAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_customer',
|
||||
displayName: 'Create Customer',
|
||||
description: 'Create a new customer.',
|
||||
props: {
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
required: false,
|
||||
}),
|
||||
verifiedEmail: Property.Checkbox({
|
||||
displayName: 'Verified Email',
|
||||
description: 'Whether the customer has verified their email.',
|
||||
required: false,
|
||||
defaultValue: true,
|
||||
}),
|
||||
sendEmailInvite: Property.Checkbox({
|
||||
displayName: 'Send Email Invite',
|
||||
required: false,
|
||||
defaultValue: false,
|
||||
}),
|
||||
firstName: Property.ShortText({
|
||||
displayName: 'First Name',
|
||||
required: false,
|
||||
}),
|
||||
lastName: Property.ShortText({
|
||||
displayName: 'Last Name',
|
||||
required: false,
|
||||
}),
|
||||
phoneNumber: Property.ShortText({
|
||||
displayName: 'Phone Number',
|
||||
required: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
acceptsMarketing:Property.Checkbox({
|
||||
displayName:'Accepts Marketing ?',
|
||||
required:false
|
||||
})
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const {
|
||||
email,
|
||||
verifiedEmail,
|
||||
sendEmailInvite,
|
||||
firstName,
|
||||
lastName,
|
||||
phoneNumber,
|
||||
tags,
|
||||
acceptsMarketing
|
||||
} = propsValue;
|
||||
|
||||
return await createCustomer(
|
||||
{
|
||||
email,
|
||||
verified_email: verifiedEmail,
|
||||
send_email_invite: sendEmailInvite,
|
||||
first_name: firstName,
|
||||
last_name: lastName,
|
||||
phone: phoneNumber,
|
||||
tags,
|
||||
email_marketing_consent:{
|
||||
state:acceptsMarketing?'subscribed':'not_subscribed',
|
||||
opt_in_level:"unknown"
|
||||
}
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,60 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createDraftOrder } from '../common';
|
||||
import { ShopifyDraftOrder } from '../common/types';
|
||||
|
||||
export const createDraftOrderAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_draft_order',
|
||||
displayName: 'Create Draft Order',
|
||||
description: 'Create a new draft order.',
|
||||
props: {
|
||||
productId: Property.Number({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product to create the order with.',
|
||||
required: false,
|
||||
}),
|
||||
variantId: Property.Number({
|
||||
displayName: 'Product Variant',
|
||||
description: 'The ID of the variant to create the order with.',
|
||||
required: false,
|
||||
}),
|
||||
title: Property.ShortText({
|
||||
displayName: 'Title',
|
||||
required: false,
|
||||
}),
|
||||
quantity: Property.Number({
|
||||
displayName: 'Quantity',
|
||||
required: false,
|
||||
defaultValue: 1,
|
||||
}),
|
||||
price: Property.ShortText({
|
||||
displayName: 'Price',
|
||||
required: false,
|
||||
}),
|
||||
customerId: Property.ShortText({
|
||||
displayName: 'Customer',
|
||||
description: 'The ID of the customer to use.',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { productId, variantId, title, quantity, price, customerId } =
|
||||
propsValue;
|
||||
|
||||
const draftOrder: Partial<ShopifyDraftOrder> = {
|
||||
line_items: [
|
||||
{
|
||||
product_id: productId,
|
||||
variant_id: variantId,
|
||||
title,
|
||||
quantity,
|
||||
price,
|
||||
},
|
||||
],
|
||||
};
|
||||
if (customerId) draftOrder.customer = { id: +customerId };
|
||||
|
||||
return await createDraftOrder(draftOrder, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,60 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createFulfillmentEvent } from '../common';
|
||||
import { ShopifyFulfillmentEventStatuses } from '../common/types';
|
||||
|
||||
export const createFulfillmentEventAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_fulfillment_event',
|
||||
displayName: 'Create Fulfillment Event',
|
||||
description: 'Create a new fulfillment event.',
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
fulfillmentId: Property.Number({
|
||||
displayName: 'Fulfillment',
|
||||
description: 'The ID of the fulfillment.',
|
||||
required: true,
|
||||
}),
|
||||
status: Property.Dropdown({
|
||||
auth: shopifyAuth,
|
||||
displayName: 'Status',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async () => {
|
||||
return {
|
||||
options: Object.values(ShopifyFulfillmentEventStatuses).map(
|
||||
(status) => {
|
||||
return {
|
||||
label:
|
||||
status.charAt(0).toUpperCase() +
|
||||
status.slice(1).replaceAll('_', ' '),
|
||||
value: status,
|
||||
};
|
||||
}
|
||||
),
|
||||
};
|
||||
},
|
||||
}),
|
||||
message: Property.ShortText({
|
||||
displayName: 'Message',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId, fulfillmentId, status, message } = propsValue;
|
||||
|
||||
return await createFulfillmentEvent(
|
||||
fulfillmentId,
|
||||
orderId,
|
||||
{
|
||||
status,
|
||||
message,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,95 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createOrder } from '../common';
|
||||
import { ShopifyOrder } from '../common/types';
|
||||
|
||||
export const createOrderAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_order',
|
||||
displayName: 'Create Order',
|
||||
description: 'Create a new order.',
|
||||
props: {
|
||||
productId: Property.Number({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product to create the order with.',
|
||||
required: false,
|
||||
}),
|
||||
variantId: Property.Number({
|
||||
displayName: 'Product Variant',
|
||||
description: 'The ID of the variant to create the order with.',
|
||||
required: false,
|
||||
}),
|
||||
title: Property.ShortText({
|
||||
displayName: 'Title',
|
||||
required: false,
|
||||
}),
|
||||
quantity: Property.Number({
|
||||
displayName: 'Quantity',
|
||||
required: false,
|
||||
defaultValue: 1,
|
||||
}),
|
||||
price: Property.ShortText({
|
||||
displayName: 'Price',
|
||||
required: false,
|
||||
}),
|
||||
customerId: Property.ShortText({
|
||||
displayName: 'Customer',
|
||||
description: 'The ID of the customer to use.',
|
||||
required: false,
|
||||
}),
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
required: false,
|
||||
}),
|
||||
sendReceipt: Property.Checkbox({
|
||||
displayName: 'Send Receipt',
|
||||
required: false,
|
||||
defaultValue: false,
|
||||
}),
|
||||
sendFulfillmentReceipt: Property.Checkbox({
|
||||
displayName: 'Send Fulfillment Receipt',
|
||||
required: false,
|
||||
defaultValue: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const {
|
||||
productId,
|
||||
variantId,
|
||||
title,
|
||||
quantity,
|
||||
price,
|
||||
customerId,
|
||||
email,
|
||||
sendReceipt,
|
||||
sendFulfillmentReceipt,
|
||||
tags,
|
||||
} = propsValue;
|
||||
|
||||
const order: Partial<ShopifyOrder> = {
|
||||
line_items: [
|
||||
{
|
||||
product_id: productId,
|
||||
variant_id: variantId,
|
||||
title,
|
||||
quantity,
|
||||
price,
|
||||
},
|
||||
],
|
||||
};
|
||||
if (customerId) order.customer = { id: +customerId };
|
||||
if (email) {
|
||||
order.email = email;
|
||||
order.send_receipt = sendReceipt;
|
||||
order.send_fulfillment_receipt = sendFulfillmentReceipt;
|
||||
}
|
||||
if (tags) order.tags = tags;
|
||||
|
||||
return await createOrder(order, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,86 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createProduct } from '../common';
|
||||
import { ShopifyImage, ShopifyProductStatuses } from '../common/types';
|
||||
|
||||
export const createProductAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_product',
|
||||
displayName: 'Create Product',
|
||||
description: 'Create a new product.',
|
||||
props: {
|
||||
title: Property.ShortText({
|
||||
displayName: 'Title',
|
||||
required: true,
|
||||
}),
|
||||
bodyHtml: Property.LongText({
|
||||
displayName: 'Description',
|
||||
description: 'Product description (supports HTML)',
|
||||
required: false,
|
||||
}),
|
||||
productType: Property.ShortText({
|
||||
displayName: 'Product Type',
|
||||
description:
|
||||
'A categorization for the product used for filtering and searching products',
|
||||
required: false,
|
||||
}),
|
||||
productImage: Property.File({
|
||||
displayName: 'Product Image',
|
||||
description: 'The public URL or the base64 image to use',
|
||||
required: false,
|
||||
}),
|
||||
status: Property.StaticDropdown({
|
||||
displayName: 'Status',
|
||||
required: true,
|
||||
defaultValue: ShopifyProductStatuses.DRAFT,
|
||||
options: {
|
||||
options: [
|
||||
{
|
||||
label: 'Active',
|
||||
value: ShopifyProductStatuses.ACTIVE,
|
||||
},
|
||||
{
|
||||
label: 'Draft',
|
||||
value: ShopifyProductStatuses.DRAFT,
|
||||
},
|
||||
{
|
||||
label: 'Archived',
|
||||
value: ShopifyProductStatuses.ARCHIVED,
|
||||
},
|
||||
],
|
||||
},
|
||||
}),
|
||||
vendor: Property.ShortText({
|
||||
displayName: 'Vendor',
|
||||
required: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { title, bodyHtml, vendor, productType, tags, productImage } =
|
||||
propsValue;
|
||||
|
||||
const images: Partial<ShopifyImage>[] = [];
|
||||
if (productImage) {
|
||||
images.push({
|
||||
attachment: productImage.base64,
|
||||
});
|
||||
}
|
||||
|
||||
return await createProduct(
|
||||
{
|
||||
title,
|
||||
body_html: bodyHtml,
|
||||
vendor,
|
||||
product_type: productType,
|
||||
tags,
|
||||
images,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,80 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createTransaction } from '../common';
|
||||
import { ShopifyTransactionKinds } from '../common/types';
|
||||
|
||||
export const createTransactionAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'create_transaction',
|
||||
displayName: 'Create Transaction',
|
||||
description: 'Create a new transaction.',
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order to create a transaction for.',
|
||||
required: true,
|
||||
}),
|
||||
kind: Property.Dropdown({
|
||||
auth: shopifyAuth,
|
||||
displayName: 'Type',
|
||||
required: true,
|
||||
refreshers: [],
|
||||
options: async () => {
|
||||
return {
|
||||
options: Object.values(ShopifyTransactionKinds).map((kind) => {
|
||||
return {
|
||||
label: kind.charAt(0).toUpperCase() + kind.slice(1),
|
||||
value: kind,
|
||||
};
|
||||
}),
|
||||
};
|
||||
},
|
||||
}),
|
||||
currency: Property.ShortText({
|
||||
displayName: 'Currency',
|
||||
required: false,
|
||||
}),
|
||||
amount: Property.ShortText({
|
||||
displayName: 'Amount',
|
||||
required: false,
|
||||
}),
|
||||
authorization: Property.ShortText({
|
||||
displayName: 'Authorization Key',
|
||||
required: false,
|
||||
}),
|
||||
parentId: Property.Number({
|
||||
displayName: 'Parent ID',
|
||||
description: 'The ID of an associated transaction.',
|
||||
required: false,
|
||||
}),
|
||||
source: Property.ShortText({
|
||||
displayName: 'Source',
|
||||
description:
|
||||
'An optional origin of the transaction. Set to external to import a cash transaction for the associated order.',
|
||||
required: false,
|
||||
}),
|
||||
test: Property.Checkbox({
|
||||
displayName: 'Test',
|
||||
description: 'Whether the transaction is a test transaction.',
|
||||
required: false,
|
||||
defaultValue: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId, kind, currency, amount, parentId, source, test } =
|
||||
propsValue;
|
||||
|
||||
return await createTransaction(
|
||||
orderId,
|
||||
{
|
||||
amount,
|
||||
currency,
|
||||
kind,
|
||||
parent_id: parentId,
|
||||
source,
|
||||
test,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,26 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getAsset } from '../common';
|
||||
|
||||
export const getAssetAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_asset',
|
||||
displayName: 'Get Asset',
|
||||
description: `Get a theme's asset.`,
|
||||
props: {
|
||||
key: Property.ShortText({
|
||||
displayName: 'Asset Key',
|
||||
required: true,
|
||||
}),
|
||||
themeId: Property.ShortText({
|
||||
displayName: 'Theme',
|
||||
description: 'The ID of the theme.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { key, themeId } = propsValue;
|
||||
|
||||
return await getAsset(key, +themeId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,21 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getCustomerOrders } from '../common';
|
||||
|
||||
export const getCustomerOrdersAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_customer_orders',
|
||||
displayName: 'Get Customer Orders',
|
||||
description: `Get an existing customer's orders.`,
|
||||
props: {
|
||||
customerId: Property.ShortText({
|
||||
displayName: 'Customer ID',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { customerId } = propsValue;
|
||||
|
||||
return await getCustomerOrders(customerId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,21 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getCustomer } from '../common';
|
||||
|
||||
export const getCustomerAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_customer',
|
||||
displayName: 'Get Customer',
|
||||
description: `Get an existing customer's information.`,
|
||||
props: {
|
||||
customerId: Property.ShortText({
|
||||
displayName: 'Customer ID',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { customerId } = propsValue;
|
||||
|
||||
return await getCustomer(customerId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,15 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getCustomers } from '../common';
|
||||
|
||||
export const getCustomersAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_customers',
|
||||
displayName: 'Get Customers',
|
||||
description: `Get an existing customers.`,
|
||||
props: {
|
||||
},
|
||||
async run({ auth }) {
|
||||
return await getCustomers(auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,27 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getFulfillment } from '../common';
|
||||
|
||||
export const getFulfillmentAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_fulfillment',
|
||||
displayName: 'Get Fulfillment',
|
||||
description: `Get a fulfillment.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
fulfillmentId: Property.Number({
|
||||
displayName: 'Fulfillment',
|
||||
description: 'The ID of the fulfillment.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId, fulfillmentId } = propsValue;
|
||||
|
||||
return await getFulfillment(fulfillmentId, orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getFulfillments } from '../common';
|
||||
|
||||
export const getFulfillmentsAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_fulfillments',
|
||||
displayName: 'Get Fulfillments',
|
||||
description: `Get an order's fulfillments.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId } = propsValue;
|
||||
|
||||
return await getFulfillments(orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,14 @@
|
||||
import { createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getLocations } from '../common';
|
||||
|
||||
export const getLocationsAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_locations',
|
||||
displayName: 'Get Locations',
|
||||
description: `Get locations.`,
|
||||
props: {},
|
||||
async run({ auth }) {
|
||||
return await getLocations(auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getProductVariant } from '../common';
|
||||
|
||||
export const getProductVariantAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_product_variant',
|
||||
displayName: 'Get Product Variant',
|
||||
description: `Get a product variant.`,
|
||||
props: {
|
||||
id: Property.ShortText({
|
||||
displayName: 'Product Variant',
|
||||
description: 'The ID of the product variant.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id } = propsValue;
|
||||
|
||||
return await getProductVariant(+id, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getProduct } from '../common';
|
||||
|
||||
export const getProductAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_product',
|
||||
displayName: 'Get Product',
|
||||
description: `Get existing product.`,
|
||||
props: {
|
||||
id: Property.ShortText({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id } = propsValue;
|
||||
|
||||
return await getProduct(+id, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,23 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getProducts } from '../common';
|
||||
|
||||
export const getProductsAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_products',
|
||||
displayName: 'Get Products',
|
||||
description: `Get existing products by title.`,
|
||||
props: {
|
||||
title: Property.ShortText({
|
||||
displayName: 'Title',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { title } = propsValue;
|
||||
|
||||
return await getProducts(auth, {
|
||||
title,
|
||||
});
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,27 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getTransaction } from '../common';
|
||||
|
||||
export const getTransactionAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_transaction',
|
||||
displayName: 'Get Transaction',
|
||||
description: `Get an existing transaction's information.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
transactionId: Property.Number({
|
||||
displayName: 'Transaction',
|
||||
description: 'The ID of the transaction',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId, transactionId } = propsValue;
|
||||
|
||||
return await getTransaction(transactionId, orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,22 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { getTransactions } from '../common';
|
||||
|
||||
export const getTransactionsAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'get_transactions',
|
||||
displayName: 'Get Order Transactions',
|
||||
description: `Get an order's transactions.`,
|
||||
props: {
|
||||
orderId: Property.Number({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { orderId } = propsValue;
|
||||
|
||||
return await getTransactions(orderId, auth);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,89 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { updateCustomer } from '../common';
|
||||
import { z } from 'zod';
|
||||
import { propsValidation } from '@activepieces/pieces-common';
|
||||
|
||||
export const updateCustomerAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'update_customer',
|
||||
displayName: 'Update Customer',
|
||||
description: 'Update an existing customer.',
|
||||
props: {
|
||||
customerId: Property.ShortText({
|
||||
displayName: 'Customer ID',
|
||||
required: true,
|
||||
}),
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
required: false,
|
||||
}),
|
||||
verifiedEmail: Property.Checkbox({
|
||||
displayName: 'Verified Email',
|
||||
description: 'Whether the customer has verified their email.',
|
||||
required: false,
|
||||
defaultValue: true,
|
||||
}),
|
||||
sendEmailInvite: Property.Checkbox({
|
||||
displayName: 'Send Email Invite',
|
||||
required: false,
|
||||
defaultValue: false,
|
||||
}),
|
||||
firstName: Property.ShortText({
|
||||
displayName: 'First Name',
|
||||
required: false,
|
||||
}),
|
||||
lastName: Property.ShortText({
|
||||
displayName: 'Last Name',
|
||||
required: false,
|
||||
}),
|
||||
phoneNumber: Property.ShortText({
|
||||
displayName: 'Phone Number',
|
||||
required: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
acceptsMarketing: Property.Checkbox({
|
||||
displayName: 'Accepts Marketing ?',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const {
|
||||
customerId,
|
||||
email,
|
||||
verifiedEmail,
|
||||
sendEmailInvite,
|
||||
firstName,
|
||||
lastName,
|
||||
phoneNumber,
|
||||
tags,
|
||||
acceptsMarketing
|
||||
} = propsValue;
|
||||
|
||||
await propsValidation.validateZod(propsValue, {
|
||||
email: z.string().email().optional(),
|
||||
});
|
||||
|
||||
return await updateCustomer(
|
||||
customerId,
|
||||
{
|
||||
email,
|
||||
verified_email: verifiedEmail,
|
||||
send_email_invite: sendEmailInvite,
|
||||
first_name: firstName,
|
||||
last_name: lastName,
|
||||
phone: phoneNumber,
|
||||
tags,
|
||||
email_marketing_consent:{
|
||||
state:acceptsMarketing?'subscribed':'unsubscribed',
|
||||
opt_in_level:"unknown"
|
||||
}
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,57 @@
|
||||
import {
|
||||
Property,
|
||||
createAction,
|
||||
} from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { updateOrder } from '../common';
|
||||
import { z } from 'zod';
|
||||
import { propsValidation } from '@activepieces/pieces-common';
|
||||
|
||||
export const updateOrderAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'update_order',
|
||||
displayName: 'Update Order',
|
||||
description: 'Update an existing order.',
|
||||
props: {
|
||||
id: Property.ShortText({
|
||||
displayName: 'Order',
|
||||
description: 'The ID of the order.',
|
||||
required: true,
|
||||
}),
|
||||
email: Property.ShortText({
|
||||
displayName: 'Email',
|
||||
required: false,
|
||||
}),
|
||||
phoneNumber: Property.ShortText({
|
||||
displayName: 'Phone Number',
|
||||
required: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
note: Property.ShortText({
|
||||
displayName: 'Note',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
await propsValidation.validateZod(propsValue, {
|
||||
email: z.string().email().optional(),
|
||||
});
|
||||
|
||||
const { id, email, phoneNumber, tags, note } = propsValue;
|
||||
|
||||
return await updateOrder(
|
||||
+id,
|
||||
{
|
||||
email,
|
||||
phone: phoneNumber,
|
||||
tags,
|
||||
note,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,92 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { updateProduct } from '../common';
|
||||
import { ShopifyImage, ShopifyProductStatuses } from '../common/types';
|
||||
|
||||
export const updateProductAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'update_product',
|
||||
displayName: 'Update Product',
|
||||
description: 'Update an existing product.',
|
||||
props: {
|
||||
id: Property.ShortText({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product.',
|
||||
required: true,
|
||||
}),
|
||||
title: Property.ShortText({
|
||||
displayName: 'Title',
|
||||
required: false,
|
||||
}),
|
||||
bodyHtml: Property.LongText({
|
||||
displayName: 'Description',
|
||||
description: 'Product description (supports HTML)',
|
||||
required: false,
|
||||
}),
|
||||
productType: Property.ShortText({
|
||||
displayName: 'Product Type',
|
||||
description:
|
||||
'A categorization for the product used for filtering and searching products',
|
||||
required: false,
|
||||
}),
|
||||
productImage: Property.File({
|
||||
displayName: 'Product Image',
|
||||
description: 'The public URL or the base64 image to use',
|
||||
required: false,
|
||||
}),
|
||||
status: Property.StaticDropdown({
|
||||
displayName: 'Status',
|
||||
required: true,
|
||||
defaultValue: ShopifyProductStatuses.DRAFT,
|
||||
options: {
|
||||
options: [
|
||||
{
|
||||
label: 'Active',
|
||||
value: ShopifyProductStatuses.ACTIVE,
|
||||
},
|
||||
{
|
||||
label: 'Draft',
|
||||
value: ShopifyProductStatuses.DRAFT,
|
||||
},
|
||||
{
|
||||
label: 'Archived',
|
||||
value: ShopifyProductStatuses.ARCHIVED,
|
||||
},
|
||||
],
|
||||
},
|
||||
}),
|
||||
vendor: Property.ShortText({
|
||||
displayName: 'Vendor',
|
||||
required: false,
|
||||
}),
|
||||
tags: Property.ShortText({
|
||||
displayName: 'Tags',
|
||||
description: 'A string of comma-separated tags for filtering and search',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id, title, bodyHtml, vendor, productType, tags, productImage } =
|
||||
propsValue;
|
||||
|
||||
const images: Partial<ShopifyImage>[] = [];
|
||||
if (productImage) {
|
||||
images.push({
|
||||
attachment: productImage.base64,
|
||||
});
|
||||
}
|
||||
|
||||
return await updateProduct(
|
||||
+id,
|
||||
{
|
||||
title,
|
||||
body_html: bodyHtml,
|
||||
vendor,
|
||||
product_type: productType,
|
||||
tags,
|
||||
images,
|
||||
},
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,36 @@
|
||||
import { Property, createAction } from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { createProductImage } from '../common';
|
||||
|
||||
export const uploadProductImageAction = createAction({
|
||||
auth: shopifyAuth,
|
||||
name: 'upload_product_image',
|
||||
displayName: 'Upload Product Image',
|
||||
description: 'Upload a new product image.',
|
||||
props: {
|
||||
id: Property.ShortText({
|
||||
displayName: 'Product',
|
||||
description: 'The ID of the product.',
|
||||
required: true,
|
||||
}),
|
||||
image: Property.File({
|
||||
displayName: 'Image',
|
||||
description: 'The public URL or the base64 image to use',
|
||||
required: true,
|
||||
}),
|
||||
position: Property.Number({
|
||||
displayName: 'Position',
|
||||
description: '1 makes it the main image.',
|
||||
required: false,
|
||||
}),
|
||||
},
|
||||
async run({ auth, propsValue }) {
|
||||
const { id, image, position } = propsValue;
|
||||
|
||||
return await createProductImage(
|
||||
+id,
|
||||
{ attachment: image.base64, position },
|
||||
auth
|
||||
);
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,526 @@
|
||||
import {
|
||||
HttpMessageBody,
|
||||
HttpMethod,
|
||||
HttpResponse,
|
||||
QueryParams,
|
||||
httpClient,
|
||||
} from '@activepieces/pieces-common';
|
||||
import {
|
||||
ShopifyAuth,
|
||||
ShopifyCheckout,
|
||||
ShopifyCollect,
|
||||
ShopifyCustomer,
|
||||
ShopifyDraftOrder,
|
||||
ShopifyFulfillment,
|
||||
ShopifyFulfillmentEvent,
|
||||
ShopifyImage,
|
||||
ShopifyOrder,
|
||||
ShopifyProduct,
|
||||
ShopifyProductVariant,
|
||||
ShopifyTransaction,
|
||||
} from './types';
|
||||
|
||||
export function getBaseUrl(shopName: string) {
|
||||
return `https://${shopName}.myshopify.com/admin/api/2023-10`;
|
||||
}
|
||||
|
||||
export function sendShopifyRequest(data: {
|
||||
url: string;
|
||||
method: HttpMethod;
|
||||
body?: HttpMessageBody;
|
||||
queryParams?: QueryParams;
|
||||
auth: ShopifyAuth;
|
||||
}): Promise<HttpResponse<HttpMessageBody>> {
|
||||
return httpClient.sendRequest({
|
||||
url: `${getBaseUrl(data.auth.props.shopName)}${data.url}`,
|
||||
method: data.method,
|
||||
body: data.body,
|
||||
queryParams: data.queryParams,
|
||||
headers: {
|
||||
'X-Shopify-Access-Token': data.auth.props.adminToken,
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
export async function createCustomer(
|
||||
customer: Partial<ShopifyCustomer>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyCustomer> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: '/customers.json',
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
customer,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { customer: ShopifyCustomer }).customer;
|
||||
}
|
||||
|
||||
export async function getCustomer(
|
||||
id: string,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyCustomer> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/customers/${id}.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { customer: ShopifyCustomer }).customer;
|
||||
}
|
||||
|
||||
export async function getCustomers(
|
||||
auth: ShopifyAuth,
|
||||
): Promise<ShopifyCustomer[]> {
|
||||
const queryParams: QueryParams = {};
|
||||
|
||||
let customers:ShopifyCustomer[] = [];
|
||||
let hasNextPage = true;
|
||||
|
||||
while (hasNextPage) {
|
||||
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/customers.json`,
|
||||
method: HttpMethod.GET,
|
||||
queryParams,
|
||||
});
|
||||
|
||||
customers = customers.concat((response.body as { customers: ShopifyCustomer[] }).customers);
|
||||
|
||||
const linkHeader = response.headers?.['link'];
|
||||
if (linkHeader && typeof linkHeader === 'string' && linkHeader.includes('rel="next"')) {
|
||||
// Extract the URL for the next page from the Link header
|
||||
const nextLink = linkHeader
|
||||
.split(',')
|
||||
.find((s) => s.includes('rel="next"'))
|
||||
?.match(/<(.*?)>/)?.[1];
|
||||
|
||||
if (nextLink) {
|
||||
queryParams.page_info = new URL(nextLink).searchParams.get('page_info') || '';
|
||||
} else {
|
||||
hasNextPage = false;
|
||||
}
|
||||
} else {
|
||||
hasNextPage = false;
|
||||
}
|
||||
}
|
||||
|
||||
return customers;
|
||||
|
||||
}
|
||||
|
||||
export async function updateCustomer(
|
||||
id: string,
|
||||
customer: Partial<ShopifyCustomer>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyCustomer> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/customers/${id}.json`,
|
||||
method: HttpMethod.PUT,
|
||||
body: {
|
||||
customer,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { customer: ShopifyCustomer }).customer;
|
||||
}
|
||||
|
||||
export async function getCustomerOrders(
|
||||
id: string,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyOrder[]> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/customers/${id}/orders.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { orders: ShopifyOrder[] }).orders;
|
||||
}
|
||||
|
||||
export async function getProducts(
|
||||
auth: ShopifyAuth,
|
||||
search: {
|
||||
title?: string;
|
||||
createdAtMin?: string;
|
||||
updatedAtMin?: string;
|
||||
}
|
||||
): Promise<ShopifyProduct[]> {
|
||||
const queryParams: QueryParams = {};
|
||||
const { title, createdAtMin, updatedAtMin } = search;
|
||||
if (title) {
|
||||
queryParams.title = title;
|
||||
}
|
||||
if (createdAtMin) {
|
||||
queryParams.created_at_min = createdAtMin;
|
||||
}
|
||||
if (updatedAtMin) {
|
||||
queryParams.updated_at_min = updatedAtMin;
|
||||
}
|
||||
|
||||
let products:ShopifyProduct[] = [];
|
||||
let hasNextPage = true;
|
||||
|
||||
while (hasNextPage) {
|
||||
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/products.json`,
|
||||
method: HttpMethod.GET,
|
||||
queryParams,
|
||||
});
|
||||
|
||||
products = products.concat((response.body as { products: ShopifyProduct[] }).products);
|
||||
|
||||
const linkHeader = response.headers?.['link'];
|
||||
if (linkHeader && typeof linkHeader === 'string' && linkHeader.includes('rel="next"')) {
|
||||
// Extract the URL for the next page from the Link header
|
||||
const nextLink = linkHeader
|
||||
.split(',')
|
||||
.find((s) => s.includes('rel="next"'))
|
||||
?.match(/<(.*?)>/)?.[1];
|
||||
|
||||
if (nextLink) {
|
||||
queryParams.page_info = new URL(nextLink).searchParams.get('page_info') || '';
|
||||
} else {
|
||||
hasNextPage = false;
|
||||
}
|
||||
} else {
|
||||
hasNextPage = false;
|
||||
}
|
||||
}
|
||||
|
||||
return products;
|
||||
}
|
||||
|
||||
export async function createProduct(
|
||||
product: Partial<ShopifyProduct>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyProduct> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/products.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
product,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { product: ShopifyProduct }).product;
|
||||
}
|
||||
|
||||
export async function updateProduct(
|
||||
id: number,
|
||||
product: Partial<ShopifyProduct>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyProduct> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/products/${id}.json`,
|
||||
method: HttpMethod.PUT,
|
||||
body: {
|
||||
product,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { product: ShopifyProduct }).product;
|
||||
}
|
||||
|
||||
export async function createDraftOrder(
|
||||
draftOrder: Partial<ShopifyDraftOrder>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyDraftOrder> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/draft_orders.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
draft_order: draftOrder,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { draft_order: ShopifyDraftOrder }).draft_order;
|
||||
}
|
||||
|
||||
export async function createOrder(
|
||||
order: Partial<ShopifyOrder>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyOrder> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
order,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { order: ShopifyOrder }).order;
|
||||
}
|
||||
|
||||
export async function updateOrder(
|
||||
id: number,
|
||||
order: Partial<ShopifyOrder>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyOrder> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${id}.json`,
|
||||
method: HttpMethod.PUT,
|
||||
body: {
|
||||
order,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { order: ShopifyOrder }).order;
|
||||
}
|
||||
|
||||
export async function createTransaction(
|
||||
orderId: number,
|
||||
transaction: Partial<ShopifyTransaction>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyTransaction> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/transactions.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
transaction,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { transaction: ShopifyTransaction }).transaction;
|
||||
}
|
||||
|
||||
export async function getTransaction(
|
||||
id: number,
|
||||
orderId: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyTransaction> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/transactions/${id}.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { transaction: ShopifyTransaction }).transaction;
|
||||
}
|
||||
|
||||
export async function getTransactions(
|
||||
orderId: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyTransaction[]> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/transactions.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { transactions: ShopifyTransaction[] }).transactions;
|
||||
}
|
||||
|
||||
export async function getFulfillments(
|
||||
orderId: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyFulfillment[]> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/fulfillments.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { fulfillments: ShopifyFulfillment[] }).fulfillments;
|
||||
}
|
||||
|
||||
export async function getFulfillment(
|
||||
id: number,
|
||||
orderId: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyFulfillment> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/fulfillments/${id}.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { fulfillment: ShopifyFulfillment }).fulfillment;
|
||||
}
|
||||
|
||||
export async function getLocations(auth: ShopifyAuth): Promise<unknown[]> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/locations.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { locations: unknown[] }).locations;
|
||||
}
|
||||
|
||||
export async function createFulfillmentEvent(
|
||||
id: number,
|
||||
orderId: number,
|
||||
event: Partial<ShopifyFulfillmentEvent>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyFulfillmentEvent> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${orderId}/fulfillments/${id}/events.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
event,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { fulfillment_event: ShopifyFulfillmentEvent })
|
||||
.fulfillment_event;
|
||||
}
|
||||
|
||||
export async function closeOrder(
|
||||
id: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyOrder> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${id}/close.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {},
|
||||
});
|
||||
|
||||
return (response.body as { order: ShopifyOrder }).order;
|
||||
}
|
||||
|
||||
export async function cancelOrder(
|
||||
id: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyOrder> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/orders/${id}/cancel.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {},
|
||||
});
|
||||
|
||||
return (response.body as { order: ShopifyOrder }).order;
|
||||
}
|
||||
|
||||
export async function adjustInventoryLevel(
|
||||
id: number,
|
||||
locationId: number,
|
||||
adjustment: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<unknown> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/inventory_levels/adjust.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
inventory_item_id: id,
|
||||
location_id: locationId,
|
||||
available_adjustment: adjustment,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { order: unknown }).order;
|
||||
}
|
||||
|
||||
export async function createCollect(
|
||||
collect: Partial<ShopifyCollect>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyCollect> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/collects.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
collect,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { collect: ShopifyCollect }).collect;
|
||||
}
|
||||
|
||||
export async function getAsset(
|
||||
key: string,
|
||||
themeId: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<unknown> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/themes/${themeId}/assets.json`,
|
||||
queryParams: {
|
||||
key,
|
||||
},
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { asset: unknown }).asset;
|
||||
}
|
||||
|
||||
export async function getProductVariant(
|
||||
id: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyProductVariant> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/variants/${id}.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { variant: ShopifyProductVariant }).variant;
|
||||
}
|
||||
|
||||
export async function getProduct(
|
||||
id: number,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyProduct> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/products/${id}.json`,
|
||||
method: HttpMethod.GET,
|
||||
});
|
||||
|
||||
return (response.body as { product: ShopifyProduct }).product;
|
||||
}
|
||||
|
||||
export async function createProductImage(
|
||||
id: number,
|
||||
image: Partial<ShopifyImage>,
|
||||
auth: ShopifyAuth
|
||||
): Promise<ShopifyImage> {
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/products/${id}/images.json`,
|
||||
method: HttpMethod.POST,
|
||||
body: {
|
||||
image,
|
||||
},
|
||||
});
|
||||
|
||||
return (response.body as { image: ShopifyImage }).image;
|
||||
}
|
||||
|
||||
export async function getAbandonedCheckouts(
|
||||
auth: ShopifyAuth,
|
||||
search: {
|
||||
sinceId: string;
|
||||
}
|
||||
): Promise<ShopifyCheckout[]> {
|
||||
const queryParams: QueryParams = {};
|
||||
const { sinceId } = search;
|
||||
if (sinceId) {
|
||||
queryParams.since_id = sinceId;
|
||||
}
|
||||
|
||||
const response = await sendShopifyRequest({
|
||||
auth: auth,
|
||||
url: `/checkouts.json`,
|
||||
method: HttpMethod.GET,
|
||||
queryParams,
|
||||
});
|
||||
|
||||
return (response.body as { checkouts: ShopifyCheckout[] }).checkouts;
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
import { httpClient, HttpMethod } from '@activepieces/pieces-common';
|
||||
import {
|
||||
createTrigger,
|
||||
Trigger,
|
||||
TriggerStrategy,
|
||||
} from '@activepieces/pieces-framework';
|
||||
import { shopifyAuth } from '../..';
|
||||
|
||||
export const createShopifyWebhookTrigger = ({
|
||||
name,
|
||||
description,
|
||||
displayName,
|
||||
sampleData,
|
||||
topic,
|
||||
}: {
|
||||
name: string;
|
||||
description: string;
|
||||
displayName: string;
|
||||
topic: string;
|
||||
sampleData: Record<string, unknown>;
|
||||
}) =>
|
||||
createTrigger({
|
||||
auth: shopifyAuth,
|
||||
name,
|
||||
description,
|
||||
displayName,
|
||||
props: {},
|
||||
sampleData: sampleData,
|
||||
type: TriggerStrategy.WEBHOOK,
|
||||
async onEnable(context) {
|
||||
const shopName = context.auth.props.shopName;
|
||||
const response = await httpClient.sendRequest<{
|
||||
webhook: {
|
||||
id: string;
|
||||
};
|
||||
}>({
|
||||
method: HttpMethod.POST,
|
||||
url: `https://${shopName}.myshopify.com/admin/api/2023-01/webhooks.json`,
|
||||
headers: {
|
||||
'X-Shopify-Access-Token': context.auth.props.adminToken,
|
||||
},
|
||||
body: {
|
||||
webhook: {
|
||||
topic: topic,
|
||||
address: context.webhookUrl,
|
||||
format: 'json',
|
||||
},
|
||||
},
|
||||
});
|
||||
await context.store?.put(`shopify_webhook_id`, response.body.webhook.id);
|
||||
console.log('webhook created', response.body.webhook.id);
|
||||
},
|
||||
async onDisable(context) {
|
||||
const webhookId = await context.store.get<string>(`shopify_webhook_id`);
|
||||
const shopName = context.auth.props.shopName;
|
||||
await httpClient.sendRequest<{
|
||||
webhook: {
|
||||
id: string;
|
||||
};
|
||||
}>({
|
||||
method: HttpMethod.DELETE,
|
||||
url: `https://${shopName}.myshopify.com/admin/api/2023-01/webhooks/${webhookId}.json`,
|
||||
headers: {
|
||||
'X-Shopify-Access-Token': context.auth.props.adminToken,
|
||||
},
|
||||
});
|
||||
await context.store?.put(`shopify_webhook_id`, null);
|
||||
},
|
||||
async run(context) {
|
||||
console.debug('trigger running', context);
|
||||
return [context.payload.body];
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,185 @@
|
||||
import { AppConnectionValueForAuthProperty } from "@activepieces/pieces-framework";
|
||||
import { shopifyAuth } from "../..";
|
||||
|
||||
export type ShopifyAuth = AppConnectionValueForAuthProperty<typeof shopifyAuth>;
|
||||
|
||||
export type ShopifyCustomer = {
|
||||
id: number;
|
||||
email: string;
|
||||
accepts_marketing: boolean;
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
first_name: string;
|
||||
last_name: string;
|
||||
orders_count: number;
|
||||
state: string;
|
||||
total_spent: number;
|
||||
last_order_id: number;
|
||||
note: unknown;
|
||||
verified_email: boolean;
|
||||
tax_exempt: boolean;
|
||||
tags: string;
|
||||
last_order_name: unknown;
|
||||
currency: string;
|
||||
phone: string;
|
||||
addresses: unknown[];
|
||||
accepts_marketing_updated_at: string;
|
||||
marketing_opt_in_level: unknown;
|
||||
tax_exemptions: unknown[];
|
||||
email_marketing_consent: unknown;
|
||||
sms_marketing_consent: unknown;
|
||||
send_email_invite: boolean;
|
||||
};
|
||||
|
||||
export type ShopifyOrder = {
|
||||
line_items: Partial<ShopifyLineItem>[];
|
||||
customer: Partial<ShopifyCustomer>;
|
||||
financial_status: ShopifyOrderFinancialStatuses;
|
||||
email: string;
|
||||
send_receipt: boolean;
|
||||
send_fulfillment_receipt: boolean;
|
||||
fulfillment_status: string;
|
||||
tags: string;
|
||||
phone: string;
|
||||
note: string;
|
||||
};
|
||||
|
||||
export type ShopifyAddress = {
|
||||
first_name: string;
|
||||
address1: string;
|
||||
phone: string;
|
||||
city: string;
|
||||
zip: string;
|
||||
province: string;
|
||||
country: string;
|
||||
last_name: string;
|
||||
address2: string;
|
||||
company: unknown;
|
||||
latitude: number;
|
||||
longitude: number;
|
||||
name: string;
|
||||
country_code: string;
|
||||
province_code: string;
|
||||
};
|
||||
|
||||
export type ShopifyProduct = {
|
||||
id: number;
|
||||
title: string;
|
||||
body_html: string;
|
||||
vendor: string;
|
||||
product_type: string;
|
||||
status: ShopifyProductStatuses;
|
||||
tags: string;
|
||||
images: Partial<ShopifyImage>[];
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
};
|
||||
|
||||
export type ShopifyImage = {
|
||||
src: string;
|
||||
attachment: string;
|
||||
position: number;
|
||||
};
|
||||
|
||||
export type ShopifyProductVariant = {
|
||||
id: number;
|
||||
product_id: number;
|
||||
title: string;
|
||||
price: string;
|
||||
sku: string;
|
||||
inventory_item_id: number;
|
||||
inventory_quantity: number;
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
[key: string]: string | number | unknown;
|
||||
};
|
||||
|
||||
export type ShopifyLineItem = {
|
||||
variant_id: number;
|
||||
product_id: number;
|
||||
quantity: number;
|
||||
price: string;
|
||||
title: string;
|
||||
};
|
||||
|
||||
export type ShopifyDraftOrder = ShopifyOrder;
|
||||
|
||||
export type ShopifyTransaction = {
|
||||
order_id: number;
|
||||
currency: string;
|
||||
amount: string;
|
||||
source: string;
|
||||
kind: ShopifyTransactionKinds;
|
||||
parent_id: number;
|
||||
test: boolean;
|
||||
};
|
||||
|
||||
export type ShopifyFulfillment = {
|
||||
order_id: number;
|
||||
status: ShopifyFulfillmentStatuses;
|
||||
line_items: Partial<ShopifyLineItem>[];
|
||||
};
|
||||
|
||||
export type ShopifyFulfillmentEvent = {
|
||||
id: number;
|
||||
order_id: number;
|
||||
status: ShopifyFulfillmentEventStatuses;
|
||||
message: string;
|
||||
};
|
||||
|
||||
export type ShopifyCollect = {
|
||||
product_id: number;
|
||||
collection_id: number;
|
||||
};
|
||||
|
||||
export type ShopifyCheckout = {
|
||||
id: number;
|
||||
abandoned_checkout_url: string;
|
||||
completed_at: string;
|
||||
created_at: string;
|
||||
currency: string;
|
||||
customer: Partial<ShopifyCustomer>;
|
||||
};
|
||||
|
||||
export enum ShopifyProductStatuses {
|
||||
ACTIVE = 'active',
|
||||
ARCHIVED = 'archived',
|
||||
DRAFT = 'draft',
|
||||
}
|
||||
|
||||
export enum ShopifyOrderFinancialStatuses {
|
||||
PENDING = 'pending',
|
||||
PARTIALLY_PAID = 'partially_pad',
|
||||
}
|
||||
|
||||
export enum ShopifyTransactionKinds {
|
||||
AUTHORIZATION = 'authorization',
|
||||
SALE = 'sale',
|
||||
CAPTURE = 'capture',
|
||||
VOID = 'void',
|
||||
REFUND = 'refund',
|
||||
}
|
||||
|
||||
export enum ShopifyFulfillmentStatuses {
|
||||
PENDING = 'pending',
|
||||
OPEN = 'open',
|
||||
SUCCESS = 'success',
|
||||
CANCELLED = 'cancelled',
|
||||
ERROR = 'error',
|
||||
FAILURE = 'failure',
|
||||
}
|
||||
|
||||
export enum ShopifyFulfillmentEventStatuses {
|
||||
ATTEMPTED_DELIVERY = 'attempted_delivery',
|
||||
CARRIER_PICKED_UP = 'carrier_picked_up',
|
||||
CONFIRMED = 'confirmed',
|
||||
DELAYED = 'delayed',
|
||||
DELIVERED = 'delivered',
|
||||
FAILURE = 'failure',
|
||||
IN_TRANSIT = 'in_transit',
|
||||
LABEL_PRINTED = 'label_printed',
|
||||
LABEL_PURCHASED = 'label_purchased',
|
||||
OUT_FOR_DELIVERY = 'out_for_delivery',
|
||||
PICKED_UP = 'picked_up',
|
||||
READY_FOR_PICKUP = 'ready_for_pickup',
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
import {
|
||||
Polling,
|
||||
DedupeStrategy,
|
||||
pollingHelper,
|
||||
} from '@activepieces/pieces-common';
|
||||
import { TriggerStrategy, createTrigger } from '@activepieces/pieces-framework';
|
||||
import { getAbandonedCheckouts } from '../common';
|
||||
import { shopifyAuth } from '../..';
|
||||
import { ShopifyAuth } from '../common/types';
|
||||
|
||||
export const newAbandonedCheckout = createTrigger({
|
||||
name: 'new_abandoned_checkout',
|
||||
auth: shopifyAuth,
|
||||
displayName: 'New Abandoned Checkout',
|
||||
description: 'Triggers when a checkout is abandoned.',
|
||||
props: {},
|
||||
sampleData: {},
|
||||
type: TriggerStrategy.POLLING,
|
||||
async onEnable({ auth, propsValue, store }) {
|
||||
await pollingHelper.onEnable(polling, { auth, propsValue, store });
|
||||
},
|
||||
async onDisable({ auth, propsValue, store }) {
|
||||
await pollingHelper.onEnable(polling, { auth, propsValue, store });
|
||||
},
|
||||
async run({ auth, propsValue, store, files }) {
|
||||
return await pollingHelper.poll(polling, { auth, propsValue, store, files });
|
||||
},
|
||||
async test({ auth, propsValue, store, files }) {
|
||||
return await pollingHelper.test(polling, { auth, propsValue, store, files });
|
||||
},
|
||||
});
|
||||
|
||||
const polling: Polling<ShopifyAuth, unknown> = {
|
||||
strategy: DedupeStrategy.LAST_ITEM,
|
||||
items: async ({ auth, lastItemId }) => {
|
||||
const checkouts = await getAbandonedCheckouts(auth, {
|
||||
sinceId: lastItemId as string,
|
||||
});
|
||||
return checkouts.map((checkout) => ({
|
||||
id: checkout.id,
|
||||
data: checkout,
|
||||
}));
|
||||
},
|
||||
};
|
||||
@@ -0,0 +1,753 @@
|
||||
import { createShopifyWebhookTrigger } from '../common/register-webhook';
|
||||
|
||||
export const newCancelledOrder = createShopifyWebhookTrigger({
|
||||
name: 'new_cancelled_order',
|
||||
description: 'Triggered when order is cancelled',
|
||||
topic: 'orders/cancelled',
|
||||
displayName: 'New Cancelled Order',
|
||||
sampleData: {
|
||||
id: 5324790137142,
|
||||
admin_graphql_api_id: 'gid://shopify/Order/5324790137142',
|
||||
app_id: 16818700281,
|
||||
browser_ip: '244.100.5.121',
|
||||
buyer_accepts_marketing: false,
|
||||
cancel_reason: 'other',
|
||||
cancelled_at: '2023-03-24T18:08:18-04:00',
|
||||
cart_token: null,
|
||||
checkout_id: 36646023004470,
|
||||
checkout_token: '751db9e69c75eb563f4d9b052e8cc0f7',
|
||||
client_details: {
|
||||
accept_language: null,
|
||||
browser_height: null,
|
||||
browser_ip: '244.100.5.121',
|
||||
browser_width: null,
|
||||
session_hash: null,
|
||||
user_agent: 'Sunflower/production Cusco/1.12.1 Ruby/3.1.2',
|
||||
},
|
||||
closed_at: '2023-03-24T18:08:18-04:00',
|
||||
company: null,
|
||||
confirmed: true,
|
||||
contact_email: 'russel.winfield@example.com',
|
||||
created_at: '2023-03-24T11:28:18-04:00',
|
||||
currency: 'USD',
|
||||
current_subtotal_price: '0.00',
|
||||
current_subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_discounts: '0.00',
|
||||
current_total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_duties_set: null,
|
||||
current_total_price: '0.00',
|
||||
current_total_price_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_tax: '0.00',
|
||||
current_total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
customer_locale: 'en',
|
||||
device_id: null,
|
||||
discount_codes: [
|
||||
{
|
||||
code: '',
|
||||
amount: '313.47',
|
||||
type: 'percentage',
|
||||
},
|
||||
],
|
||||
email: 'russel.winfield@example.com',
|
||||
estimated_taxes: false,
|
||||
financial_status: 'refunded',
|
||||
fulfillment_status: null,
|
||||
gateway: 'manual',
|
||||
landing_site: null,
|
||||
landing_site_ref: null,
|
||||
location_id: null,
|
||||
merchant_of_record_app_id: null,
|
||||
name: '#1009',
|
||||
note: null,
|
||||
note_attributes: [],
|
||||
number: 9,
|
||||
order_number: 1009,
|
||||
order_status_url:
|
||||
'https://activepieces-test.myshopify.com/74392404278/orders/85adf5f235cb50d1dfc203d1b8da9885/authenticate?key=f91a3b1892736757ffb6ba26d3e7ff70',
|
||||
original_total_duties_set: null,
|
||||
payment_gateway_names: ['manual'],
|
||||
phone: null,
|
||||
presentment_currency: 'USD',
|
||||
processed_at: '2023-03-24T11:28:17-04:00',
|
||||
processing_method: 'manual',
|
||||
reference: '7b40196bcf0a1cad3f0954c4e058c229',
|
||||
referring_site: null,
|
||||
source_identifier: '7b40196bcf0a1cad3f0954c4e058c229',
|
||||
source_name: '16818700289',
|
||||
source_url: null,
|
||||
subtotal_price: '1776.38',
|
||||
subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '1776.38',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '1776.38',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
tags: 'Line Item Discount, Order Discount',
|
||||
tax_lines: [],
|
||||
taxes_included: false,
|
||||
test: false,
|
||||
token: '85adf5f235cb50d1dfc203d1b8da9885',
|
||||
total_discounts: '323.47',
|
||||
total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '323.47',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '323.47',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_line_items_price: '2099.85',
|
||||
total_line_items_price_set: {
|
||||
shop_money: {
|
||||
amount: '2099.85',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2099.85',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_outstanding: '0.00',
|
||||
total_price: '1806.38',
|
||||
total_price_set: {
|
||||
shop_money: {
|
||||
amount: '1806.38',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '1806.38',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_shipping_price_set: {
|
||||
shop_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tax: '0.00',
|
||||
total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tip_received: '0.00',
|
||||
total_weight: 13605,
|
||||
updated_at: '2023-03-24T18:08:18-04:00',
|
||||
user_id: null,
|
||||
billing_address: {
|
||||
first_name: 'Russell',
|
||||
address1: '105 Victoria St',
|
||||
phone: null,
|
||||
city: 'Toronto',
|
||||
zip: 'M5C1N7',
|
||||
province: null,
|
||||
country: 'Canada',
|
||||
last_name: 'Winfield',
|
||||
address2: null,
|
||||
company: 'Company Name',
|
||||
latitude: 43.6522608,
|
||||
longitude: -79.3776862,
|
||||
name: 'Russell Winfield',
|
||||
country_code: 'CA',
|
||||
province_code: null,
|
||||
},
|
||||
customer: {
|
||||
id: 6972527083830,
|
||||
email: 'russel.winfield@example.com',
|
||||
accepts_marketing: false,
|
||||
created_at: '2023-03-24T11:28:11-04:00',
|
||||
updated_at: '2023-03-24T11:28:19-04:00',
|
||||
first_name: 'Russell',
|
||||
last_name: 'Winfield',
|
||||
state: 'disabled',
|
||||
note: 'This customer is created with most available fields',
|
||||
verified_email: true,
|
||||
multipass_identifier: null,
|
||||
tax_exempt: false,
|
||||
phone: '+16135550135',
|
||||
email_marketing_consent: {
|
||||
state: 'not_subscribed',
|
||||
opt_in_level: 'single_opt_in',
|
||||
consent_updated_at: null,
|
||||
},
|
||||
sms_marketing_consent: {
|
||||
state: 'not_subscribed',
|
||||
opt_in_level: 'unknown',
|
||||
consent_updated_at: null,
|
||||
consent_collected_from: 'OTHER',
|
||||
},
|
||||
tags: 'VIP',
|
||||
currency: 'USD',
|
||||
accepts_marketing_updated_at: '2023-03-24T11:28:11-04:00',
|
||||
marketing_opt_in_level: null,
|
||||
tax_exemptions: [],
|
||||
admin_graphql_api_id: 'gid://shopify/Customer/6972527083830',
|
||||
default_address: {
|
||||
id: 9218460975414,
|
||||
customer_id: 6972527083830,
|
||||
first_name: 'Russell',
|
||||
last_name: 'Winfield',
|
||||
company: 'Company Name',
|
||||
address1: '105 Victoria St',
|
||||
address2: null,
|
||||
city: 'Toronto',
|
||||
province: null,
|
||||
country: 'Canada',
|
||||
zip: 'M5C1N7',
|
||||
phone: null,
|
||||
name: 'Russell Winfield',
|
||||
province_code: null,
|
||||
country_code: 'CA',
|
||||
country_name: 'Canada',
|
||||
default: true,
|
||||
},
|
||||
},
|
||||
discount_applications: [
|
||||
{
|
||||
target_type: 'line_item',
|
||||
type: 'manual',
|
||||
value: '10.0',
|
||||
value_type: 'fixed_amount',
|
||||
allocation_method: 'each',
|
||||
target_selection: 'explicit',
|
||||
title: '',
|
||||
description: null,
|
||||
},
|
||||
{
|
||||
target_type: 'line_item',
|
||||
type: 'manual',
|
||||
value: '15.0',
|
||||
value_type: 'percentage',
|
||||
allocation_method: 'across',
|
||||
target_selection: 'all',
|
||||
title: '',
|
||||
description: null,
|
||||
},
|
||||
],
|
||||
fulfillments: [],
|
||||
line_items: [
|
||||
{
|
||||
id: 13924936679734,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13924936679734',
|
||||
fulfillable_quantity: 0,
|
||||
fulfillment_service: 'manual',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 4536,
|
||||
name: 'The Complete Snowboard - Powder',
|
||||
price: '699.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223302966,
|
||||
properties: [],
|
||||
quantity: 1,
|
||||
requires_shipping: true,
|
||||
sku: '',
|
||||
taxable: true,
|
||||
title: 'The Complete Snowboard',
|
||||
total_discount: '10.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881537334,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: 'Powder',
|
||||
vendor: 'Snowboard Vendor',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [
|
||||
{
|
||||
amount: '10.00',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 0,
|
||||
},
|
||||
{
|
||||
amount: '103.50',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '103.50',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '103.50',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 1,
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 13924936712502,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13924936712502',
|
||||
fulfillable_quantity: 0,
|
||||
fulfillment_service: 'manual',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 4536,
|
||||
name: 'The Complete Snowboard - Electric',
|
||||
price: '699.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223302966,
|
||||
properties: [],
|
||||
quantity: 2,
|
||||
requires_shipping: true,
|
||||
sku: '',
|
||||
taxable: true,
|
||||
title: 'The Complete Snowboard',
|
||||
total_discount: '0.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881570102,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: 'Electric',
|
||||
vendor: 'Snowboard Vendor',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [
|
||||
{
|
||||
amount: '209.97',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '209.97',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '209.97',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 1,
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
payment_terms: null,
|
||||
refunds: [
|
||||
{
|
||||
id: 945108681014,
|
||||
admin_graphql_api_id: 'gid://shopify/Refund/945108681014',
|
||||
created_at: '2023-03-24T18:08:18-04:00',
|
||||
note: null,
|
||||
order_id: 5324790137142,
|
||||
processed_at: '2023-03-24T18:08:18-04:00',
|
||||
restock: false,
|
||||
total_duties_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
user_id: 94873289014,
|
||||
order_adjustments: [
|
||||
{
|
||||
id: 278632759606,
|
||||
amount: '-30.00',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '-30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '-30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
kind: 'shipping_refund',
|
||||
order_id: 5324790137142,
|
||||
reason: 'Shipping refund',
|
||||
refund_id: 945108681014,
|
||||
tax_amount: '0.00',
|
||||
tax_amount_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
transactions: [
|
||||
{
|
||||
id: 6492880732470,
|
||||
admin_graphql_api_id:
|
||||
'gid://shopify/OrderTransaction/6492880732470',
|
||||
amount: '1806.38',
|
||||
authorization: null,
|
||||
created_at: '2023-03-24T18:08:18-04:00',
|
||||
currency: 'USD',
|
||||
device_id: null,
|
||||
error_code: null,
|
||||
gateway: 'manual',
|
||||
kind: 'refund',
|
||||
location_id: null,
|
||||
message: 'Refunded 1806.38 from manual gateway',
|
||||
order_id: 5324790137142,
|
||||
parent_id: 6492602990902,
|
||||
payment_id: '#1009.2',
|
||||
processed_at: '2023-03-24T18:08:18-04:00',
|
||||
receipt: {},
|
||||
source_name: '1830279',
|
||||
status: 'success',
|
||||
test: false,
|
||||
user_id: null,
|
||||
},
|
||||
],
|
||||
refund_line_items: [
|
||||
{
|
||||
id: 554287071542,
|
||||
line_item_id: 13924936679734,
|
||||
location_id: null,
|
||||
quantity: 1,
|
||||
restock_type: 'no_restock',
|
||||
subtotal: 586.45,
|
||||
subtotal_set: {
|
||||
shop_money: {
|
||||
amount: '586.45',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '586.45',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tax: 0,
|
||||
total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
line_item: {
|
||||
id: 13924936679734,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13924936679734',
|
||||
fulfillable_quantity: 0,
|
||||
fulfillment_service: 'manual',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 4536,
|
||||
name: 'The Complete Snowboard - Powder',
|
||||
price: '699.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223302966,
|
||||
properties: [],
|
||||
quantity: 1,
|
||||
requires_shipping: true,
|
||||
sku: '',
|
||||
taxable: true,
|
||||
title: 'The Complete Snowboard',
|
||||
total_discount: '10.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881537334,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: 'Powder',
|
||||
vendor: 'Snowboard Vendor',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [
|
||||
{
|
||||
amount: '10.00',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '10.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 0,
|
||||
},
|
||||
{
|
||||
amount: '103.50',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '103.50',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '103.50',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 1,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
id: 554287104310,
|
||||
line_item_id: 13924936712502,
|
||||
location_id: null,
|
||||
quantity: 2,
|
||||
restock_type: 'no_restock',
|
||||
subtotal: 1189.93,
|
||||
subtotal_set: {
|
||||
shop_money: {
|
||||
amount: '1189.93',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '1189.93',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tax: 0,
|
||||
total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
line_item: {
|
||||
id: 13924936712502,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13924936712502',
|
||||
fulfillable_quantity: 0,
|
||||
fulfillment_service: 'manual',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 4536,
|
||||
name: 'The Complete Snowboard - Electric',
|
||||
price: '699.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '699.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223302966,
|
||||
properties: [],
|
||||
quantity: 2,
|
||||
requires_shipping: true,
|
||||
sku: '',
|
||||
taxable: true,
|
||||
title: 'The Complete Snowboard',
|
||||
total_discount: '0.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881570102,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: 'Electric',
|
||||
vendor: 'Snowboard Vendor',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [
|
||||
{
|
||||
amount: '209.97',
|
||||
amount_set: {
|
||||
shop_money: {
|
||||
amount: '209.97',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '209.97',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
discount_application_index: 1,
|
||||
},
|
||||
],
|
||||
},
|
||||
},
|
||||
],
|
||||
duties: [],
|
||||
},
|
||||
],
|
||||
shipping_address: {
|
||||
first_name: 'Russell',
|
||||
address1: '105 Victoria St',
|
||||
phone: null,
|
||||
city: 'Toronto',
|
||||
zip: 'M5C1N7',
|
||||
province: null,
|
||||
country: 'Canada',
|
||||
last_name: 'Winfield',
|
||||
address2: null,
|
||||
company: 'Company Name',
|
||||
latitude: 43.6522608,
|
||||
longitude: -79.3776862,
|
||||
name: 'Russell Winfield',
|
||||
country_code: 'CA',
|
||||
province_code: null,
|
||||
},
|
||||
shipping_lines: [
|
||||
{
|
||||
id: 4362548838710,
|
||||
carrier_identifier: '071e9d6cd4a1d56acf60bc21aea1e689',
|
||||
code: 'International Shipping',
|
||||
delivery_category: null,
|
||||
discounted_price: '30.00',
|
||||
discounted_price_set: {
|
||||
shop_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
phone: null,
|
||||
price: '30.00',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '30.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
requested_fulfillment_service_id: null,
|
||||
source: 'shopify',
|
||||
title: 'International Shipping',
|
||||
tax_lines: [],
|
||||
discount_allocations: [],
|
||||
},
|
||||
],
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,81 @@
|
||||
import { createShopifyWebhookTrigger } from '../common/register-webhook';
|
||||
|
||||
export const newCustomer = createShopifyWebhookTrigger({
|
||||
name: 'new_customer',
|
||||
description: 'Triggered when a new customer is created',
|
||||
topic: 'customers/create',
|
||||
displayName: 'New Customer',
|
||||
sampleData: {
|
||||
id: 6972943892790,
|
||||
email: 'john@activepieces.com',
|
||||
accepts_marketing: false,
|
||||
created_at: '2023-03-24T18:13:56-04:00',
|
||||
updated_at: '2023-03-24T18:13:56-04:00',
|
||||
first_name: 'John',
|
||||
last_name: 'Doe',
|
||||
orders_count: 0,
|
||||
state: 'disabled',
|
||||
total_spent: '0.00',
|
||||
last_order_id: null,
|
||||
note: 'Some notes',
|
||||
verified_email: true,
|
||||
multipass_identifier: null,
|
||||
tax_exempt: false,
|
||||
tags: 'tag, VIP',
|
||||
last_order_name: null,
|
||||
currency: 'USD',
|
||||
addresses: [
|
||||
{
|
||||
id: 9218699002161,
|
||||
customer_id: 6972943892790,
|
||||
first_name: 'John',
|
||||
last_name: 'Doe',
|
||||
company: 'Company Name',
|
||||
address1: 'Delaware',
|
||||
address2: '11, test',
|
||||
city: 'Calforina',
|
||||
province: 'Delaware',
|
||||
country: 'United States',
|
||||
zip: '19931',
|
||||
name: 'Mohammad AbuAboud',
|
||||
province_code: 'DE',
|
||||
country_code: 'US',
|
||||
country_name: 'United States',
|
||||
default: true,
|
||||
},
|
||||
],
|
||||
accepts_marketing_updated_at: '2023-03-24T18:13:56-04:00',
|
||||
marketing_opt_in_level: null,
|
||||
tax_exemptions: [],
|
||||
email_marketing_consent: {
|
||||
state: 'not_subscribed',
|
||||
opt_in_level: 'single_opt_in',
|
||||
consent_updated_at: null,
|
||||
},
|
||||
sms_marketing_consent: {
|
||||
state: 'not_subscribed',
|
||||
opt_in_level: 'single_opt_in',
|
||||
consent_updated_at: null,
|
||||
consent_collected_from: 'SHOPIFY',
|
||||
},
|
||||
admin_graphql_api_id: 'gid://shopify/Customer/6972943892790',
|
||||
default_address: {
|
||||
id: 9218699002166,
|
||||
customer_id: 6972943892790,
|
||||
first_name: 'Mohammad',
|
||||
last_name: 'AbuAboud',
|
||||
company: 'Company Name',
|
||||
address1: 'Delaware',
|
||||
address2: '11, test',
|
||||
city: 'Calforina',
|
||||
province: 'Delaware',
|
||||
country: 'United States',
|
||||
zip: '19931',
|
||||
name: 'Mohammad AbuAboud',
|
||||
province_code: 'DE',
|
||||
country_code: 'US',
|
||||
country_name: 'United States',
|
||||
default: true,
|
||||
},
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,238 @@
|
||||
import { createShopifyWebhookTrigger } from '../common/register-webhook';
|
||||
|
||||
export const newOrder = createShopifyWebhookTrigger({
|
||||
name: 'new_order',
|
||||
description: 'Triggered when a new order is created',
|
||||
topic: 'orders/create',
|
||||
displayName: 'New Order',
|
||||
sampleData: {
|
||||
id: 5324830114101,
|
||||
admin_graphql_api_id: 'gid://shopify/Order/5324830114102',
|
||||
app_id: 1354745,
|
||||
browser_ip: '95.90.193.175',
|
||||
buyer_accepts_marketing: false,
|
||||
cancel_reason: null,
|
||||
cancelled_at: null,
|
||||
cart_token: null,
|
||||
checkout_id: 36646099517750,
|
||||
checkout_token: '2b9ba639fb81a1fb61a02be4c95459b5',
|
||||
client_details: {
|
||||
accept_language: null,
|
||||
browser_height: null,
|
||||
browser_ip: '95.90.193.175',
|
||||
browser_width: null,
|
||||
session_hash: null,
|
||||
user_agent:
|
||||
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36',
|
||||
},
|
||||
closed_at: null,
|
||||
company: null,
|
||||
confirmed: true,
|
||||
contact_email: null,
|
||||
created_at: '2023-03-24T12:37:26-04:00',
|
||||
currency: 'USD',
|
||||
current_subtotal_price: '2629.95',
|
||||
current_subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_discounts: '0.00',
|
||||
current_total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_duties_set: null,
|
||||
current_total_price: '2629.95',
|
||||
current_total_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_tax: '0.00',
|
||||
current_total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
customer_locale: 'en',
|
||||
device_id: null,
|
||||
discount_codes: [],
|
||||
email: '',
|
||||
estimated_taxes: false,
|
||||
financial_status: 'paid',
|
||||
fulfillment_status: null,
|
||||
gateway: 'manual',
|
||||
landing_site: null,
|
||||
landing_site_ref: null,
|
||||
location_id: 80901996854,
|
||||
merchant_of_record_app_id: null,
|
||||
name: '#1010',
|
||||
note: null,
|
||||
note_attributes: [],
|
||||
number: 10,
|
||||
order_number: 1010,
|
||||
order_status_url:
|
||||
'https://activepieces-test.myshopify.com/74392404278/orders/2979b599ca9a25049397820ac12aaf87/authenticate?key=42a8db0d2e048823fea486a316d0d231',
|
||||
original_total_duties_set: null,
|
||||
payment_gateway_names: ['manual'],
|
||||
presentment_currency: 'USD',
|
||||
processed_at: '2023-03-24T12:37:26-04:00',
|
||||
processing_method: 'manual',
|
||||
reference: 'f86c8158ece5ee11dfafc9b21f390184',
|
||||
referring_site: null,
|
||||
source_identifier: 'f86c8158ece5ee11dfafc9b21f390184',
|
||||
source_name: 'shopify_draft_order',
|
||||
source_url: null,
|
||||
subtotal_price: '2629.95',
|
||||
subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
tags: '',
|
||||
tax_lines: [],
|
||||
taxes_included: false,
|
||||
test: false,
|
||||
token: '2979b599ca9a25049397820ac12aaf87',
|
||||
total_discounts: '0.00',
|
||||
total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_line_items_price: '2629.95',
|
||||
total_line_items_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_outstanding: '0.00',
|
||||
total_price: '2629.95',
|
||||
total_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_shipping_price_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tax: '0.00',
|
||||
total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tip_received: '0.00',
|
||||
total_weight: 0,
|
||||
updated_at: '2023-03-24T12:37:27-04:00',
|
||||
user_id: 94873289014,
|
||||
discount_applications: [],
|
||||
fulfillments: [],
|
||||
line_items: [
|
||||
{
|
||||
id: 13925006311734,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13925006311734',
|
||||
fulfillable_quantity: 1,
|
||||
fulfillment_service: 'snow-city-warehouse',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 0,
|
||||
name: 'The 3p Fulfilled Snowboard',
|
||||
price: '2629.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223204662,
|
||||
properties: [],
|
||||
quantity: 1,
|
||||
requires_shipping: true,
|
||||
sku: 'sku-hosted-1',
|
||||
taxable: true,
|
||||
title: 'The 3p Fulfilled Snowboard',
|
||||
total_discount: '0.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881439030,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: null,
|
||||
vendor: 'activepieces-test',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [],
|
||||
},
|
||||
],
|
||||
payment_terms: null,
|
||||
refunds: [],
|
||||
shipping_lines: [],
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,238 @@
|
||||
import { createShopifyWebhookTrigger } from '../common/register-webhook';
|
||||
|
||||
export const newPaidOrder = createShopifyWebhookTrigger({
|
||||
name: 'new_paid_order',
|
||||
description: 'Triggered when a paid order is created',
|
||||
topic: 'orders/paid',
|
||||
displayName: 'New Paid Order',
|
||||
sampleData: {
|
||||
id: 5324830114101,
|
||||
admin_graphql_api_id: 'gid://shopify/Order/5324830114102',
|
||||
app_id: 1354745,
|
||||
browser_ip: '95.90.193.175',
|
||||
buyer_accepts_marketing: false,
|
||||
cancel_reason: null,
|
||||
cancelled_at: null,
|
||||
cart_token: null,
|
||||
checkout_id: 36646099517750,
|
||||
checkout_token: '2b9ba639fb81a1fb61a02be4c95459b5',
|
||||
client_details: {
|
||||
accept_language: null,
|
||||
browser_height: null,
|
||||
browser_ip: '95.90.193.175',
|
||||
browser_width: null,
|
||||
session_hash: null,
|
||||
user_agent:
|
||||
'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36',
|
||||
},
|
||||
closed_at: null,
|
||||
company: null,
|
||||
confirmed: true,
|
||||
contact_email: null,
|
||||
created_at: '2023-03-24T12:37:26-04:00',
|
||||
currency: 'USD',
|
||||
current_subtotal_price: '2629.95',
|
||||
current_subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_discounts: '0.00',
|
||||
current_total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_duties_set: null,
|
||||
current_total_price: '2629.95',
|
||||
current_total_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
current_total_tax: '0.00',
|
||||
current_total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
customer_locale: 'en',
|
||||
device_id: null,
|
||||
discount_codes: [],
|
||||
email: '',
|
||||
estimated_taxes: false,
|
||||
financial_status: 'paid',
|
||||
fulfillment_status: null,
|
||||
gateway: 'manual',
|
||||
landing_site: null,
|
||||
landing_site_ref: null,
|
||||
location_id: 80901996854,
|
||||
merchant_of_record_app_id: null,
|
||||
name: '#1010',
|
||||
note: null,
|
||||
note_attributes: [],
|
||||
number: 10,
|
||||
order_number: 1010,
|
||||
order_status_url:
|
||||
'https://activepieces-test.myshopify.com/74392404278/orders/2979b599ca9a25049397820ac12aaf87/authenticate?key=42a8db0d2e048823fea486a316d0d231',
|
||||
original_total_duties_set: null,
|
||||
payment_gateway_names: ['manual'],
|
||||
presentment_currency: 'USD',
|
||||
processed_at: '2023-03-24T12:37:26-04:00',
|
||||
processing_method: 'manual',
|
||||
reference: 'f86c8158ece5ee11dfafc9b21f390184',
|
||||
referring_site: null,
|
||||
source_identifier: 'f86c8158ece5ee11dfafc9b21f390184',
|
||||
source_name: 'shopify_draft_order',
|
||||
source_url: null,
|
||||
subtotal_price: '2629.95',
|
||||
subtotal_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
tags: '',
|
||||
tax_lines: [],
|
||||
taxes_included: false,
|
||||
test: false,
|
||||
token: '2979b599ca9a25049397820ac12aaf87',
|
||||
total_discounts: '0.00',
|
||||
total_discounts_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_line_items_price: '2629.95',
|
||||
total_line_items_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_outstanding: '0.00',
|
||||
total_price: '2629.95',
|
||||
total_price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_shipping_price_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tax: '0.00',
|
||||
total_tax_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
total_tip_received: '0.00',
|
||||
total_weight: 0,
|
||||
updated_at: '2023-03-24T12:37:27-04:00',
|
||||
user_id: 94873289014,
|
||||
discount_applications: [],
|
||||
fulfillments: [],
|
||||
line_items: [
|
||||
{
|
||||
id: 13925006311734,
|
||||
admin_graphql_api_id: 'gid://shopify/LineItem/13925006311734',
|
||||
fulfillable_quantity: 1,
|
||||
fulfillment_service: 'snow-city-warehouse',
|
||||
fulfillment_status: null,
|
||||
gift_card: false,
|
||||
grams: 0,
|
||||
name: 'The 3p Fulfilled Snowboard',
|
||||
price: '2629.95',
|
||||
price_set: {
|
||||
shop_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '2629.95',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
product_exists: true,
|
||||
product_id: 8222223204662,
|
||||
properties: [],
|
||||
quantity: 1,
|
||||
requires_shipping: true,
|
||||
sku: 'sku-hosted-1',
|
||||
taxable: true,
|
||||
title: 'The 3p Fulfilled Snowboard',
|
||||
total_discount: '0.00',
|
||||
total_discount_set: {
|
||||
shop_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
presentment_money: {
|
||||
amount: '0.00',
|
||||
currency_code: 'USD',
|
||||
},
|
||||
},
|
||||
variant_id: 44872881439030,
|
||||
variant_inventory_management: 'shopify',
|
||||
variant_title: null,
|
||||
vendor: 'activepieces-test',
|
||||
tax_lines: [],
|
||||
duties: [],
|
||||
discount_allocations: [],
|
||||
},
|
||||
],
|
||||
payment_terms: null,
|
||||
refunds: [],
|
||||
shipping_lines: [],
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,87 @@
|
||||
import { createShopifyWebhookTrigger } from '../common/register-webhook';
|
||||
|
||||
export const updatedProduct = createShopifyWebhookTrigger({
|
||||
name: 'updated_product',
|
||||
description: 'Triggered when a product is updated.',
|
||||
topic: 'products/update',
|
||||
displayName: 'Updated Product',
|
||||
sampleData: {
|
||||
id: 8282295566587,
|
||||
title: 'My AP Product',
|
||||
body_html: 'Well <strong>this is nice</strong>',
|
||||
vendor: 'Kofahi',
|
||||
product_type: 'Test',
|
||||
created_at: '2024-01-02T20:36:40+03:00',
|
||||
handle: 'my-ap-product-1',
|
||||
updated_at: '2024-01-02T20:36:40+03:00',
|
||||
published_at: '2024-01-02T20:36:40+03:00',
|
||||
template_suffix: null,
|
||||
published_scope: 'global',
|
||||
tags: '',
|
||||
status: 'active',
|
||||
variants: [
|
||||
{
|
||||
id: 45134980382971,
|
||||
product_id: 8282295566587,
|
||||
title: 'Default Title',
|
||||
price: '0.000',
|
||||
sku: '',
|
||||
position: 1,
|
||||
inventory_policy: 'deny',
|
||||
compare_at_price: null,
|
||||
fulfillment_service: 'manual',
|
||||
inventory_management: null,
|
||||
option1: 'Default Title',
|
||||
option2: null,
|
||||
option3: null,
|
||||
created_at: '2024-01-02T20:36:40+03:00',
|
||||
updated_at: '2024-01-02T20:36:40+03:00',
|
||||
taxable: true,
|
||||
barcode: null,
|
||||
grams: 0,
|
||||
image_id: null,
|
||||
weight: 0,
|
||||
weight_unit: 'kg',
|
||||
inventory_item_id: 47200507134203,
|
||||
inventory_quantity: 0,
|
||||
old_inventory_quantity: 0,
|
||||
requires_shipping: true,
|
||||
},
|
||||
],
|
||||
options: [
|
||||
{
|
||||
id: 10640607805691,
|
||||
product_id: 8282295566587,
|
||||
name: 'Title',
|
||||
position: 1,
|
||||
values: ['Default Title'],
|
||||
},
|
||||
],
|
||||
images: [
|
||||
{
|
||||
id: 41679215657211,
|
||||
product_id: 8282295566587,
|
||||
position: 1,
|
||||
created_at: '2024-01-02T20:36:40+03:00',
|
||||
updated_at: '2024-01-02T20:36:40+03:00',
|
||||
alt: null,
|
||||
width: 500,
|
||||
height: 500,
|
||||
src: 'https://cdn.shopify.com/s/files/1/0676/6598/5787/products/416a37a613b156f9d23e4fa1fd5358d7.png?v=1704217000',
|
||||
variant_ids: [],
|
||||
},
|
||||
],
|
||||
image: {
|
||||
id: 41679215657211,
|
||||
product_id: 8282295566587,
|
||||
position: 1,
|
||||
created_at: '2024-01-02T20:36:40+03:00',
|
||||
updated_at: '2024-01-02T20:36:40+03:00',
|
||||
alt: null,
|
||||
width: 500,
|
||||
height: 500,
|
||||
src: 'https://cdn.shopify.com/s/files/1/0676/6598/5787/products/416a37a613b156f9d23e4fa1fd5358d7.png?v=1704217000',
|
||||
variant_ids: [],
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user