### Create Order cURL Example Source: https://www.artelo.io/artelo-api/documentation/orders/create Example cURL command to create an order using the Artelo API, demonstrating the request structure and headers. ```curl curl -X POST 'https://www.artelo.io/api/open/orders/create' \ -H 'Authorization: Bearer your-token' \ -d '{ "branding": { "insertId": "e7c7b7d7-d8d5-4f9a-a3a5-b8a8c3d3c2c1", "stickerId": "e7c7b7d7-d8d5-4f9a-a3a5-b8a8c3d3c2c1", "insertPlacement": "PerOrder", "stickerPlacement": "PerOrder" }, "createdAt": "2024-09-30T13:56:29.057Z", "currency": "USD", "customerAddress": { "city": "Miami", "country": "US", "email": "john@doe.com", "name": "John Doe", "state": "Florida", "street1": "No 1 rosbridge street", "zipcode": "90110" }, "discount": 0, "items": [ { "arteloProductId": "9019ec20-a391-4ae9-aa86-1ac2a2edd076", "orderItemId": "test-id", "productInfo": { "catalogProductId": "IndividualArtPrint", "frameColor": "BlackMetal", "includeFramingService": false, "includeHangingPins": false, "includeMats": false, "orientation": "Horizontal", "paperType": "ArchivalMatteFineArt", "size": "x10x10", "unitCost": 19.99, "designs": [ { "imageId": "a1b2c3d4-e5f6-7890-1234-567890abcdef", "overrides": { "height": 800, "rotation": 45, "width": 600, "x": 100, "y": 50 }, "sourceImage": { "url": "https://example.com/image.jpg" } } ] }, "quantity": 1, "unitPrice": 25.00 } ], "orderId": "ART-ORDER-12345", "shippingCost": 5.00, "tax": 2.00, "total": 32.00, "vat": 0 }' ``` -------------------------------- ### cURL Example for Catalog GET Source: https://www.artelo.io/artelo-api/documentation/catalog/get-all A practical example demonstrating how to call the Artelo API's /catalog/get endpoint using cURL. It includes setting the Authorization header with an API key and applying a query parameter to filter results by product category. ```curl curl -G 'https://www.artelo.io/api/open/catalog/get?productCategory=ArtPrint' \ -H 'Authorization: Bearer your-token' ``` -------------------------------- ### Example cURL Request Source: https://www.artelo.io/artelo-api/documentation/orders/get-all Demonstrates how to fetch orders using cURL, specifying a limit and including the necessary Authorization header. This example requests 10 orders. ```curl curl -G 'https://www.artelo.io/api/open/orders/get?limit=10' \ -H 'Authorization: Bearer your-token' ``` -------------------------------- ### Example Branding Object (PackageInsert) Source: https://www.artelo.io/artelo-api/documentation/branding/branding-object An example JSON object demonstrating the structure of a Branding Object, specifically for a 'PackageInsert' type, including front and back design details. ```json { "PackageInsert": [ { "back": { "height": 400, "id": "the-design-id", "image": { "previews": { "lg": "https://example.com/img.lg.png", "sm": "https://example.com/img.sm.png", "xs": "https://example.com/img.xs.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 }, "front": { "height": 400, "id": "the-design-id", "image": { "previews": { "lg": "https://example.com/img.lg.png", "sm": "https://example.com/img.sm.png", "xs": "https://example.com/img.xs.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 } } ] } ``` -------------------------------- ### JSON: Upload Folder Example Source: https://www.artelo.io/artelo-api/documentation/uploads/upload-folder-object Provides a concrete example of an upload folder object in JSON format, illustrating the expected data types and values for each attribute. ```json { "createdAt": "2024-11-15T14:49:24.060Z", "id": "c9c740b2-7bbf-414a-92ad-06e435c9e961", "name": "Upload Folder", "numSubfiles": 10, "numSubfolders": 2, "parentFolderId": null } ``` -------------------------------- ### cURL Example: Fetch Order by ID Source: https://www.artelo.io/artelo-api/documentation/orders/get-by-id Example demonstrating how to fetch order details using the cURL command-line tool. It includes the necessary endpoint URL, query parameters, and authorization header. ```curl curl -G 'https://www.artelo.io/api/open/orders/get-by-id?orderId=d310e238-1cef-49c8-bb63-2e93a06badb4' \ -H 'Authorization: Bearer your-token' ``` -------------------------------- ### Sample Product Set JSON Source: https://www.artelo.io/artelo-api/documentation/product-sets/product-set-object An example JSON payload representing a product set with associated designs and product configurations. Demonstrates the structure and data types for a typical API response. ```JSON { "createdAt": "2024-10-11T12:38:48.465Z", "name": "product name", "products": [ { "designs": [ { "height": 400, "id": "the-design-id", "image": { "previews": { "lg": "https://example.com/img.lg.png", "sm": "https://example.com/img.sm.png", "xs": "https://example.com/img.xs.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 } ], "frameStyle": "Metal", "id": "sample-id", "paperStyle": "FineArt", "catalogProductId": "IndividualArtPrint", "frameColor": "BlackMetal", "includeFramingService": false, "includeHangingPins": false, "includeMats": false, "orientation": "Horizontal", "paperType": "ArchivalMatteFineArt", "size": "x10x10", "unitCost": 19.99 } ], "id": "product-set-id", "updatedAt": "2024-10-11T12:38:48.465Z" } ``` -------------------------------- ### Product Object Example Source: https://www.artelo.io/artelo-api/documentation/product-sets/product-object A sample JSON object representing a product, conforming to the Artelo API schema. It demonstrates the structure for designs, image details, framing, and other product specifications. ```json { "designs": [ { "height": 400, "id": "the-design-id", "image": { "previews": { "lg": "https://example.com/img.lg.png", "sm": "https://example.com/img.sm.png", "xs": "https://example.com/img.xs.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 } ], "frameStyle": "Metal", "id": "sample-id", "paperStyle": "FineArt", "catalogProductId": "IndividualArtPrint", "frameColor": "BlackMetal", "includeFramingService": false, "includeHangingPins": false, "includeMats": false, "orientation": "Horizontal", "paperType": "ArchivalMatteFineArt", "size": "x10x10", "unitCost": 19.99 } ``` -------------------------------- ### cURL Example: Create Upload Source: https://www.artelo.io/artelo-api/documentation/uploads/create-file A cURL command demonstrating how to send a POST request to the Artelo API's file creation endpoint, including authorization and the request payload. ```curl curl -X POST 'https://www.artelo.io/api/open/uploads/files/create' \ -H 'Authorization: Bearer your-token' \ -d '{ "imageUrl": "https://example.com/test.png", "name": "image1" }' ``` -------------------------------- ### Example Artelo Order Object Source: https://www.artelo.io/artelo-api/documentation/orders/order-object A sample JSON object representing a complete Artelo order, including creation timestamp, currency, customer address, order details, item specifics, and shipment information. ```json { "createdAt": "2024-09-30T13:56:29.057Z", "currency": "USD", "customerAddress": { "city": "Miami", "countryCode": "US", "id": "de14efbe-daec-4e2d-b967-80ca9a5f9c17", "name": "John Doe", "email": "johndoe@gmail.com", "phone": "+15551234567", "state": "Florida", "street1": "No 1 rosbridge street", "zipcode": "90110" }, "details": { "amountRefunded": 0, "arteloShipping": 7, "branding": 2, "discount": 0, "gst": 1, "hst": 1, "productionCost": 0, "pst": 0, "usSalesTax": 0 }, "id": "9de08b35-0ed5-4046-8339-32f051037189", "insertPlacement": "PerOrder", "orderId": "1230945", "orderItems": [ { "arteloProductId": "ee7e38b9-442c-41bc-a849-32929a879537", "isPersonalizable": false, "product": { "designs": [ { "height": 400, "width": 400 } ], "paperType": "SemiGlossPoster", "size": "x10x10" } } ], "shipments": [ { "carrierCode": "FEDEX", "trackingNumber": "1234567890", "trackingUrl": "https://www.fedex.com/tracking/1234567890" } ], "stickerPlacement": "PerOrder", "stickerId": "sticker-123", "status": "Shipped" } ``` -------------------------------- ### Catalog API Source: https://www.artelo.io/artelo-api/documentation/getting-started Handles product catalog information. Enables fetching individual products and lists of all products. ```APIDOC Catalog Product Object: Schema description for catalog product data. Get Catalog Product GET: Endpoint: /artelo-api/documentation/catalog/get-product Description: Retrieves details for a specific catalog product. Input: Product identifier. Returns: Catalog product details. Get Catalog Products GET: Endpoint: /artelo-api/documentation/catalog/get-all Description: Retrieves a list of all catalog products. Returns: List of catalog products. ``` -------------------------------- ### GET /product-sets/get - Retrieve Product Sets Source: https://www.artelo.io/artelo-api/documentation/product-sets/get-product-set Retrieves a list of product sets from the Artelo API. Supports filtering by creation/update dates, name, and pagination with limit, offset, sorting by attributes like `createdAt` or `updatedAt`, and sort direction (`asc`/`desc`). Includes a cURL example and a sample JSON response structure. ```APIDOC Endpoint: GET /product-sets/get Parameters: limit (number, Required): Number of results to return in each paginated query. maxCreatedAt (string): Filter by the maximum creation date of the product set. maxUpdatedAt (string): Filter by the maximum updated date of product set. minCreatedAt (string): Filter by the minimum creation date of product set. minUpdatedAt (string): Filter by the minimum updated date of product set. name (string): Filter by the name of the product set. offset (number): Offset for pagination. sortBy (enum): Attribute to sort the product sets based on. Defaults to `updatedAt`. Possible values: `createdAt`, `updatedAt`. sortDirection (enum): Sort direction for product sets. Defaults to descending. Possible values: `asc`, `desc`. Returns: A list of `ProductSet` objects. Example: curl -G 'https://www.artelo.io/api/open/product-sets/get?limit=10' \ -H 'Authorization: Bearer your-token' Sample Response Structure: [ { "createdAt": "2024-10-11T12:38:48.465Z", "id": "456f9ad0-da58-4a2a-8240-0f6dda97ae9f", "name": "Product Set Name", "products": [ { "catalogProductId": "IndividualArtPrint", "designs": [ { "height": 400, "id": "906f9ad0-da58-dd90-0140-0f6dda97ae9f", "image": { "previews": { "lg": "https://url.com/lg-img.png", "sm": "https://url.com/sm-img.png", "xs": "https://url.com/xs-img.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 } ], "frameColor": "BlackMetal", "frameStyle": "Metal", "id": "456f9ad0-da58-dd90-0140-0f6dda97ae9f", "includeFramingService": true, "includeHangingPins": true, "includeMats": true, "orientation": "Horizontal", "paperStyle": "FineArt", "paperType": "ArchivalMatteFineArt" } ] } ] ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/introduction Endpoints for managing product sets and their configurations. ```APIDOC Product Sets API: Get Product Sets GET /product-sets/get-product-set Description: Retrieves a list of all available product sets. Parameters: None Returns: An array of Product set Objects. Get Product Set by Id GET /product-sets/get-by-id Description: Retrieves a specific product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set. Returns: A Product set Object. Save Product Set POST /product-sets/save-product-set Description: Creates or updates a product set. Parameters: - productSetObject: The Product set Object containing the configuration. Returns: The saved or updated Product set Object. Delete Product Set DELETE /product-sets/delete-product-set Description: Deletes a product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set to delete. Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/webhooks Endpoints for managing product sets and their configurations. ```APIDOC Product Sets API: Get Product Sets GET /product-sets/get-product-set Description: Retrieves a list of all available product sets. Parameters: None Returns: An array of Product set Objects. Get Product Set by Id GET /product-sets/get-by-id Description: Retrieves a specific product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set. Returns: A Product set Object. Save Product Set POST /product-sets/save-product-set Description: Creates or updates a product set. Parameters: - productSetObject: The Product set Object containing the configuration. Returns: The saved or updated Product set Object. Delete Product Set DELETE /product-sets/delete-product-set Description: Deletes a product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set to delete. Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### Example Webhook Payload Source: https://www.artelo.io/artelo-api/documentation/webhooks/webhook-object An example JSON object representing a configured webhook. This payload demonstrates how to specify filters for order status changes, providing a sample webhook ID, failure count, secret, topic, and the target URL. ```JSON { "filters": { "statuses": [ "Shipped" ] }, "id": "e747b74f-ae93-4594-a434-7fa3d7789ce8", "numFailures": 0, "secret": "test-secret", "topic": "OrderStatusChange", "url": "https://api.example.com/artelo-webhook" } ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/product-sets Endpoints for managing product sets and their configurations. ```APIDOC Product Sets API: Get Product Sets GET /product-sets/get-product-set Description: Retrieves a list of all available product sets. Parameters: None Returns: An array of Product set Objects. Get Product Set by Id GET /product-sets/get-by-id Description: Retrieves a specific product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set. Returns: A Product set Object. Save Product Set POST /product-sets/save-product-set Description: Creates or updates a product set. Parameters: - productSetObject: The Product set Object containing the configuration. Returns: The saved or updated Product set Object. Delete Product Set DELETE /product-sets/delete-product-set Description: Deletes a product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set to delete. Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### cURL Example for Deleting Uploaded File Source: https://www.artelo.io/artelo-api/documentation/uploads/delete-file This example demonstrates how to use cURL to send a DELETE request to the Artelo API for removing an uploaded file. It includes the endpoint, the file ID as a query parameter, and the necessary Authorization header. ```cURL curl -X DELETE 'https://www.artelo.io/api/open/uploads/files/delete?id=25ed6c73-2b32-456b-9031-93546cc7412a' \ -H 'Authorization: Bearer your-token' ``` -------------------------------- ### Artelo API Catalog GET Endpoint Source: https://www.artelo.io/artelo-api/documentation/catalog/get-all This entry details the GET request to the /catalog/get endpoint. It specifies the available query parameters for filtering catalog results by design count, price range, name, and product category. The response is described as a filtered list of CatalogProduct items. ```APIDOC GET /catalog/get Parameters: designCount (number, optional): Filter for the number of designs in the catalog results. maxPrice (number, optional): Filter for the maximum price of the catalog results. minPrice (number, optional): Filter for the minimum price of the catalog results. name (string, optional): Search query for filtering catalog results by name. productCategory (enum, optional): Category that the catalog product belongs to. Possible enum values: `ArtPrint`, `GalleryPrints`, `Frame`. Returns: A filtered list of all `CatalogProduct` items offered by Artelo. ``` -------------------------------- ### Get Product Set by ID Source: https://www.artelo.io/artelo-api/documentation/product-sets/get-by-id Retrieves a specific `ProductSet` by its unique identifier. This API endpoint uses the GET method and requires an authorization token. The `id` parameter is passed as a query parameter. The response includes detailed information about the product set, its associated products, designs, and framing options. ```curl curl -G 'https://www.artelo.io/api/open/product-sets/get-by-id?id=116f6ad0-da58-4a2a-8240-0f6dda97ae9f' \ -H 'Authorization: Bearer your-token' ``` ```json { "createdAt": "2024-10-11T12:38:48.465Z", "id": "456f9ad0-da58-4a2a-8240-0f6dda97ae9f", "name": "Product Set Name", "products": [ { "catalogProductId": "IndividualArtPrint", "designs": [ { "height": 400, "id": "906f9ad0-da58-dd90-0140-0f6dda97ae9f", "image": { "previews": { "lg": "https://url.com/lg-img.png", "sm": "https://url.com/sm-img.png", "xs": "https://url.com/xs-img.png" }, "url": "https://example.com/x.png" }, "order": 0, "rotation": 30, "width": 400, "x": 0, "y": 0 } ], "frameColor": "BlackMetal", "frameStyle": "Metal", "id": "456f9ad0-da58-dd90-0140-0f6dda97ae9f", "includeFramingService": true, "includeHangingPins": true, "includeMats": true, "orientation": "Horizontal", "paperStyle": "FineArt", "paperType": "ArchivalMatteFineArt", "size": "x10x10" } ] } ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/uploads/create-folder Provides endpoints for managing product sets, including retrieving, saving, and deleting product set configurations. ```APIDOC GET /product-sets/get-product-set - Retrieves a list of all product sets. - Returns: An array of product set objects. GET /product-sets/get-by-id - Retrieves a specific product set by its unique identifier. - Parameters: - productSetId (string, Required): The unique identifier of the product set. - Returns: The product set object. POST /product-sets/save-product-set - Saves or updates a product set. - Parameters: - productSetObject (object, Required): The product set configuration to save. - Returns: Confirmation of save operation. DELETE /product-sets/delete-product-set - Deletes a product set. - Parameters: - productSetId (string, Required): The unique identifier of the product set to delete. - Returns: Confirmation of deletion. ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/orders Endpoints for managing product sets and their configurations. ```APIDOC Product Sets API: Get Product Sets GET /product-sets/get-product-set Description: Retrieves a list of all available product sets. Parameters: None Returns: An array of Product set Objects. Get Product Set by Id GET /product-sets/get-by-id Description: Retrieves a specific product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set. Returns: A Product set Object. Save Product Set POST /product-sets/save-product-set Description: Creates or updates a product set. Parameters: - productSetObject: The Product set Object containing the configuration. Returns: The saved or updated Product set Object. Delete Product Set DELETE /product-sets/delete-product-set Description: Deletes a product set by its unique identifier. Parameters: - productSetId: The unique identifier of the product set to delete. Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### Webhooks API Operations Source: https://www.artelo.io/artelo-api/documentation/orders/get-by-id Manage webhooks for receiving real-time event notifications. Includes getting, saving, and deleting webhooks. ```APIDOC Webhook Object Description: Represents a webhook subscription. Properties: - webhookId (string): Unique identifier for the webhook. - url (string): The URL to send notifications to. - topic (string): The event topic to subscribe to. - secret (string): A secret key for signature verification. - isActive (boolean): Whether the webhook is active. Webhook Topics Description: Lists available event topics for webhooks. Endpoint: /webhooks/topics Method: GET Returns: Array of topic strings. Get Webhooks GET Description: Retrieves a list of all configured webhooks. Endpoint: /webhooks/get Method: GET Returns: Array of Webhook Objects. Save Webhook POST Description: Saves or updates a webhook subscription. Endpoint: /webhooks/save Method: POST Parameters: - webhook (Webhook Object, Required): The webhook configuration to save. Returns: Confirmation of save operation. Delete Webhook DELETE Description: Deletes a webhook subscription by its ID. Endpoint: /webhooks/delete Method: DELETE Parameters: - webhookId (string, Required): The unique identifier of the webhook to delete. Returns: Confirmation of deletion. ``` -------------------------------- ### Get Branding Data Source: https://www.artelo.io/artelo-api/documentation/branding/get Retrieves branding configuration for the authenticated account. This endpoint provides access to the current branding settings. ```APIDOC GET /branding/get Description: Get branding data for your account. Parameters: No parameters Returns: Branding data object (details not specified in input) ``` -------------------------------- ### Product Set Management Source: https://www.artelo.io/artelo-api/documentation/uploads/get-subfolders Endpoints for managing product sets, allowing retrieval, creation, and deletion of product set configurations. ```APIDOC Get Product Sets GET Description: Retrieves a list of all product sets. Returns: An array of product set objects. Get Product Set by Id GET Description: Retrieves a specific product set by its unique identifier. Parameters: - productSetId (string): The unique identifier of the product set. Returns: Product set object. Save Product Set POST Description: Saves or updates a product set. Parameters: - productSetData (object): The data for the product set. Returns: The saved product set object. Delete Product Set DELETE Description: Deletes a product set. Parameters: - productSetId (string): The unique identifier of the product set to delete. Returns: Confirmation of deletion. ``` -------------------------------- ### Uploads: Get Folder Subfiles Source: https://www.artelo.io/artelo-api/documentation/uploads/get-subfiles Fetches all subfiles within a specified folder. Supports pagination and querying the root folder if no ID is provided. ```APIDOC GET /uploads/get-subfiles Fetch all subfiles of a folder specified by its `id`. Parameters: - `id` (string, optional): Unique identifier of the folder to query. If empty, the root folder is queried. - `limit` (number, optional): Number of results to return in each paginated query. - `offset` (number, optional): Offset for pagination. ``` -------------------------------- ### Create Order Source: https://www.artelo.io/artelo-api/documentation/orders/create Creates a new customer order. ```APIDOC Create Order POST Description: Creates a new customer order. Endpoint: /orders/create ``` -------------------------------- ### Artelo API - Product Sets Endpoints Source: https://www.artelo.io/artelo-api/documentation/catalog/get-all Manage product sets, allowing retrieval, creation, and deletion of product set configurations. ```APIDOC Product Sets: Get Product Sets: GET /product-sets/get-product-set Description: Retrieves a list of all product sets. Returns: Array of ProductSet objects. Get Product Set by Id: GET /product-sets/get-by-id Parameters: - product_set_id: The unique identifier for the product set. Description: Retrieves a specific product set by its ID. Returns: ProductSet object. Save Product Set: POST /product-sets/save-product-set Parameters: - product_set_data: Object containing product set configuration. Description: Saves or updates a product set. Returns: The saved or updated ProductSet object. Delete Product Set: DELETE /product-sets/delete-product-set Parameters: - product_set_id: The unique identifier for the product set to delete. Description: Deletes a specified product set. Returns: Confirmation of deletion. ``` -------------------------------- ### Get Upload Counts Source: https://www.artelo.io/artelo-api/documentation/uploads/counts Retrieves the total number of uploads categorized by their status. This endpoint is useful for monitoring the state of uploaded assets within the system. ```APIDOC Get Upload Counts Description: Get the number of uploads for each `status` type. Parameters: No parameters Returns: An object containing counts for each upload status. ``` -------------------------------- ### Webhooks API Source: https://www.artelo.io/artelo-api/documentation/product-sets Endpoints for managing webhook subscriptions and configurations. ```APIDOC Webhooks API: Get Webhooks GET /webhooks/get Description: Retrieves a list of all configured webhooks. Parameters: None Returns: An array of Webhook Objects. Save Webhook POST /webhooks/save Description: Creates or updates a webhook subscription. Parameters: - webhookObject: The Webhook Object containing the URL, events, and other settings. Returns: The saved or updated Webhook Object. Delete Webhook DELETE /webhooks/delete Description: Deletes a webhook subscription. Parameters: - webhookId: The unique identifier of the webhook to delete. Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### Uploads API Source: https://www.artelo.io/artelo-api/documentation/product-sets/get-by-id Manage file and folder uploads. Supports creating, retrieving, and deleting files and folders, as well as getting upload counts and folder contents. ```APIDOC Upload Object Description: Represents a file upload. Properties: - id: string - name: string - type: string (e.g., 'FILE', 'FOLDER') - parentId: string (optional) - url: string (for files) Upload Folder Object Description: Represents a folder in the upload structure. Properties: - id: string - name: string - type: 'FOLDER' - parentId: string (optional) Get Upload by Id GET Description: Retrieves an upload (file or folder) by its ID. Endpoint: /uploads/get-by-id Method: GET Parameters: - id: string (Required) - The ID of the upload to retrieve. Returns: Upload Object. Get Upload Counts GET Description: Retrieves counts of files and folders. Endpoint: /uploads/counts Method: GET Parameters: None Returns: Object with file and folder counts. Get Folder Subfolders GET Description: Retrieves subfolders within a specified folder. Endpoint: /uploads/get-subfolders Method: GET Parameters: - folderId: string (Required) - The ID of the folder to list subfolders from. Returns: Array of Upload Folder Objects. Get Folder Subfiles GET Description: Retrieves files within a specified folder. Endpoint: /uploads/get-subfiles Method: GET Parameters: - folderId: string (Required) - The ID of the folder to list files from. Returns: Array of Upload Objects (files). Create Upload POST Description: Creates a new file upload. Endpoint: /uploads/create-file Method: POST Parameters: - file: File object (Required) - folderId: string (Optional) - The ID of the parent folder. Returns: The created Upload Object. Create Folder POST Description: Creates a new folder. Endpoint: /uploads/create-folder Method: POST Parameters: - name: string (Required) - The name of the new folder. - parentId: string (Optional) - The ID of the parent folder. Returns: The created Upload Folder Object. Delete File DELETE Description: Deletes a file by its ID. Endpoint: /uploads/delete-file Method: DELETE Parameters: - id: string (Required) - The ID of the file to delete. Returns: Confirmation of deletion. Delete Folder DELETE Description: Deletes a folder by its ID. Endpoint: /uploads/delete-folder Method: DELETE Parameters: - id: string (Required) - The ID of the folder to delete. Returns: Confirmation of deletion. ``` -------------------------------- ### Image Upload JSON Payload Source: https://www.artelo.io/artelo-api/documentation/uploads/upload-object An example JSON object representing a successfully uploaded image, including its file type, dimensions, preview URLs, status, and main URL. ```JSON { "fileType": "JPG", "height": 1000, "previews": { "lg": "https://example.com/img.lg.png", "sm": "https://example.com/img.sm.png", "xs": "https://example.com/img.xs.png" }, "status": "Success", "url": "https://img.png", "width": 600 } ``` -------------------------------- ### Branding API Source: https://www.artelo.io/artelo-api/documentation/product-sets Endpoints for managing branding assets and configurations. ```APIDOC Branding API: Get Branding GET /branding/get Description: Retrieves the current branding settings and assets. Parameters: None Returns: A Branding Object containing branding details. Save Branding POST /branding/save Description: Updates or saves new branding configurations. Parameters: - brandingObject: The Branding Object containing the new settings. Returns: A confirmation message or the updated Branding Object. Delete Branding DELETE /branding/delete Description: Removes the current branding configuration. Parameters: None Returns: A confirmation message upon successful deletion. ``` -------------------------------- ### Uploads API Endpoints Source: https://www.artelo.io/artelo-api/documentation/webhooks/topics Endpoints for managing file and folder uploads. Supports creating, retrieving, and deleting files and folders, as well as getting upload counts and folder contents. ```APIDOC Upload Object: Represents a file upload. Upload folder Object: Represents a folder for uploads. Get Upload by Id GET: Path: /artelo-api/documentation/uploads/get-by-id Description: Retrieves a specific upload by its ID. Input: Upload ID. Returns: Upload Object. Get Upload Counts GET: Path: /artelo-api/documentation/uploads/counts Description: Retrieves counts of uploads and folders. Returns: Upload counts. Get Folder Subfolders GET: Path: /artelo-api/documentation/uploads/get-subfolders Description: Retrieves subfolders within a given folder. Input: Folder Path. Returns: Array of Upload folder Objects. Get Folder Subfiles GET: Path: /artelo-api/documentation/uploads/get-subfiles Description: Retrieves files within a given folder. Input: Folder Path. Returns: Array of Upload Objects. Create Upload POST: Path: /artelo-api/documentation/uploads/create-file Description: Creates a new file upload. Input: File data and destination path. Returns: Confirmation of upload. Create Folder POST: Path: /artelo-api/documentation/uploads/create-folder Description: Creates a new folder. Input: Folder path. Returns: Confirmation of folder creation. Delete File DELETE: Path: /artelo-api/documentation/uploads/delete-file Description: Deletes a file. Input: File path. Returns: Confirmation of deletion. Delete Folder DELETE: Path: /artelo-api/documentation/uploads/delete-folder Description: Deletes a folder and its contents. Input: Folder path. Returns: Confirmation of deletion. ``` -------------------------------- ### Webhooks API Source: https://www.artelo.io/artelo-api/documentation/product-sets/product-set-object Endpoints for managing webhook subscriptions and configurations. ```APIDOC Webhook Object Description: Represents a webhook subscription. Webhook Topics Description: Lists available topics for webhooks. Get Webhooks GET Description: Retrieves a list of all configured webhooks. Method: GET Endpoint: /webhooks/get Returns: Array of Webhook Objects. Save Webhook POST Description: Creates or updates a webhook subscription. Method: POST Endpoint: /webhooks/save Request Body: Webhook Object Returns: The saved Webhook Object. Delete Webhook DELETE Description: Deletes a webhook subscription. Method: DELETE Endpoint: /webhooks/delete Parameters: - webhookId: The ID of the webhook to delete. Returns: Confirmation of deletion. ``` -------------------------------- ### GET /orders/get Endpoint Source: https://www.artelo.io/artelo-api/documentation/orders/get-all Retrieves a list of orders based on specified filters. Supports filtering by date, name, status, and pagination. Requires an Authorization header with a Bearer token. ```APIDOC GET /orders/get Parameters: allOrders (boolean): Whether or not to query all orders or only orders created by the API integration. limit (number): Required. Number of results to return in each paginated query. maxDate (string): Filter by the maximum created date of orders. minDate (string): Filter by the minimum created date of orders. name (string): Filter by `name` or `orderId` of the order. offset (number): Offset for pagination. sortDirection (enum): Sort direction for orders based on `createdAt` date. Defaults to descending. Possible values: `asc`, `desc`. statuses (array of enums): Filter by the statuses of the order. Possible values: `PendingFulfillmentAction`, `AwaitingPayment`, `Received`, `InProduction`, `Shipped`, `Delivered`, `Canceled`. Returns: The `Order` objects matching the supplied filters. Example Response Structure: [ { "createdAt": "2024-09-30T13:56:29.057Z", "currency": "USD", "customerAddress": { "city": "Miami", "countryCode": "US", "id": "address-id", "name": "John Doe", "phone": "+15551234567", "state": "Florida", "street1": "No 1 Rosbridge Street", "street2": "#123", "email": "john@doe.com", "zipcode": "900110" }, "details": { "amountRefunded": 0, "arteloShipping": 10, "branding": 1, "discount": 0, "gst": 1, "hst": 1, "productionCost": 5, "pst": 1, "usSalesTax": 0 }, "id": "de14efbe-daec-4e2d-b967-80ca9a5f9c17", "insertPlacement": "PerOrder", "insertId": "b1e38b9-442c-41bc-a849-32929a879537", "instructions": "Handle it with care", "orderId": "this-is-the-order", "orderItems": [ { "arteloProductId": "ee7e38b9-442c-41bc-a849-32929a879537", "isPersonalizable": false } ] } ] ``` -------------------------------- ### Uploads API Source: https://www.artelo.io/artelo-api/documentation/orders/cancel Endpoints for managing file and folder uploads. Includes operations for creating, retrieving, and deleting files and folders, as well as getting upload counts and folder contents. ```APIDOC Uploads API Get Upload by Id: GET /uploads/get-by-id Description: Retrieves information about a specific upload. Parameters: (Query Parameters): id: string (Required) - The ID of the upload. Get Upload Counts: GET /uploads/counts Description: Retrieves counts of uploads. Get Folder Subfolders: GET /uploads/get-subfolders Description: Retrieves subfolders within a specified folder. Parameters: (Query Parameters): folderId: string (Required) - The ID of the folder to list subfolders from. Get Folder Subfiles: GET /uploads/get-subfiles Description: Retrieves files within a specified folder. Parameters: (Query Parameters): folderId: string (Required) - The ID of the folder to list files from. Create Upload: POST /uploads/create-file Description: Creates a new file upload. Parameters: (Request Body): File upload details. Create Folder: POST /uploads/create-folder Description: Creates a new folder. Parameters: (Request Body): Folder creation details. Delete File: DELETE /uploads/delete-file Description: Deletes a file. Parameters: (Query Parameters): fileId: string (Required) - The ID of the file to delete. Delete Folder: DELETE /uploads/delete-folder Description: Deletes a folder. Parameters: (Query Parameters): folderId: string (Required) - The ID of the folder to delete. ``` -------------------------------- ### Product Sets API Source: https://www.artelo.io/artelo-api/documentation/product-sets/product-set-object Endpoints for managing product sets and their configurations. ```APIDOC Product set Object Description: Represents a collection of products. Product Object Description: Represents a product within a set. Design Object Description: Represents design specifications for a product set. Get Product Sets GET Description: Retrieves a list of product sets. Method: GET Endpoint: /product-sets/get-product-set Returns: Array of Product set Objects. Get Product Set by Id GET Description: Retrieves a specific product set by its ID. Method: GET Endpoint: /product-sets/get-by-id Parameters: - productSetId: The ID of the product set to retrieve. Returns: Product set Object. Save Product Set POST Description: Saves or updates a product set. Method: POST Endpoint: /product-sets/save-product-set Request Body: Product set Object Returns: Confirmation of save. Delete Product Set DELETE Description: Deletes a product set. Method: DELETE Endpoint: /product-sets/delete-product-set Parameters: - productSetId: The ID of the product set to delete. Returns: Confirmation of deletion. ``` -------------------------------- ### Branding API Source: https://www.artelo.io/artelo-api/documentation/introduction Endpoints for managing branding assets and configurations. ```APIDOC Branding API: Get Branding GET /branding/get Description: Retrieves the current branding settings and assets. Parameters: None Returns: A Branding Object containing branding details. Save Branding POST /branding/save Description: Updates or saves new branding configurations. Parameters: - brandingObject: The Branding Object containing the new settings. Returns: A confirmation message or the updated Branding Object. Delete Branding DELETE /branding/delete Description: Removes the current branding configuration. Parameters: None Returns: A confirmation message upon successful deletion. ```