Skip to content

M agento 2 File Downloads & Product Attachments Manual

File Downloads and Product Attachments Cover

Introduction

File Downloads & Product Attachments allows you to attach downloadable files (price lists, user guides, warranty agreement, video tutorials, etc.).

You can share the attachments on Product Pages, in Static Blocks or literally on any CMS page. The extension provides the possibility to attach files in all popular file formats, such as: jpg, jpeg, gif, png, bmp, txt, csv, htm, html, xml, css, doc, docx, xls, rtf, ppt, pdf, swf, flv, avi, wmv, mov, wav, mp3, zip and many others.

The access to the files can be restricted for different customer groups. The access to the files can be restricted for different customer groups. By hiding attachments behind the You have to login or register to download this file message you can motivate customers to sign up/log in.

Requirements and Installation

File Downloads and Product Attachments extension supports Open source (Community), Commerce (Enterprise) editions and Commerce cloud. The current version of the Magento installed on your website can be found in the lower right corner of any backend page.

File Downloads and Product Attachments has 3 separate ways of installation:

1) Copy the code (ready-to-paste package);
2) Use MageWorx Repository;
3) Use local Composer.

Configuration

The main extension’s settings can be found under STORES ⟶ Configuration ⟶ MAGEWORX ⟶ File Downloads & Product Attachments

File Downloads Configuration

  • Display File Size shows/hides the file size that appears next to the downloadable file on the front-end.

  • File Size Precision displays the file size in one of 3 values: Kilobytes, Megabytes or Auto. We generally recommend users to set it to Auto. In the the Auto mode, the extension determines automatically what size precision should be shown based on the actual file zie.

  • Group By Section groups the files by the sections and displays the section name on the front-end.

  • Sort Order arranges the files in the selected order: Alphabetical, Upload Date, Size, Number of Downloads.

  • Hide Files - If set to Yes, then the user won't see the attachments that are set up to be shown for some other customer group. If this setting is set to No, then customers will see the files as a plain text but won’t be able to download them unless their customer group is in the allowed groups.

  • 'How to download' message is the dependent option and it is shown if the Hide Files setting is set to No. This message is shown near the files that cannot be downloaded due to the restrictions by the customer groups on the front-end. You can use this message to persuade the users to Log in or Register. The available variables: %login% or %register%.

  • Display the # of Downloads shows your visitors how many times the file was downloaded. This number is updated when the page cache is refreshed.

Example

Here, the Display File Size is enabled, Hide Files is set to No and the second attacment is prohibited to download for the non-registered users. The 'How to download' message is shown for this attachment. The Display the # of Downloads is set to Yes

File Downloads Configuration

  • Product Downloads Tab Title specifies the title of the tab with downloadable files on the product page, added by the module.

  • Product Downloads Block Title specifies the title of the section with downloadable files on the product page, added by the module. This setting is used if your theme doesn't have the product tabs or display the tabs as the separate sections (like in Magento Commerce layout).

Example

Here, the Product Downloads Tab Title is "File Downloads Tab" and the Product Downloads Block Title is "File Downloads Block"

  • Maximum Allowed File Size allows to limit the size of the uploaded files.

  • File Downloads Title specifies the default title for the block with the downloadable files on the CMS Pages if it is not specified in the code snippet. See more details how to add the files to the CMS Pages here.

File Downloads Sections

To check or modify file downloads sections, go to STORES ⟶ MageWorx Downloads ⟶ Manage Section

File Downloads Sections

In this section, the store owner can manage all the sections:

  • add new ones;

  • edit the existing sections;

  • bulk enable/disable them;

  • select and delete the ones that are not needed.

To create a new section, click the Add New Section button.

File Downloads Sections Configuration

Here you can specify a Section Name (it can be visible on the front-end for your customers), Short Description (optional and not visible on the frontend) and the Status (enabled by default).

File Downloads Attachments

To check or modify file downloads sections, go to STORES ⟶ MageWorx Downloads ⟶ Manage Attachments

File Downloads Sections Configuration

In this section, you can add a new product attachment, edit the existing ones or delete the files you no longer need.

This grid supports Mass Edit. To manage the bulk configuration, the store owner should select the checkboxes of the products and click the Edit button in the Select Items dropdown.

File Downloads Sections Mass Edit

To add a new section, click the Add New Attachment button.

File Downloads New Attachments File Downloads New Attachments File Downloads New Attachments

First of all, the store owner should select the desired Section for the attachment, specify the Name and the Description (will be visible on the frontend).

Example

The "Mageworx License" is the attachment's name and the "Default Magento License (Description)" is the description of this document.

  • Downloads Limit determines the max number of allowed downloads for the certain file. If the limit is exceeded, customers won’t be able to download this file.

  • Assign By spesifies the way how to assign the products to this attachment. Depending on the selection, the second tab of the Attachment page will differ.

Example

  • Product grid: The Product Grid option is the default one. Here, one can see the default products grid with the possibility to use the standard Magento filters functionality to easily find the necessary products. File Downloads New Attachments

  • Product SKUs / IDs: You can also assign templates to products by entering their Product IDs or Product SKUs. Each individual ID/SKU should be comma-separated. File Downloads New Attachments

Note: no spaces allowed between multiple values.

  • File / URL Switcher provides the possibility either to upload the files to the server from the computer or from any location on the web via URL. If the File is selected, you can assign as many files as you wish at once. The maximum allowed size of one file is 10 Mb. If the URL is selected, then the file will be opened in a new browser tab.

  • Customers Groups allows choosing customer groups that can download or view the files. O

  • Store View manages the store views, where the attachments should be visible.

  • Is Active setting provides the possibility to temporary hide this attachment.

  • Add file in "New Order" email allows adding the downloadble files to the order confirmation emails.

Multi-stores support

The extension allows you to translate title and description of the files and file sections for each store view. For this open a file or a section for editing and switch to "Store View Specific Data".

Attachment: File Downloads Product Attachments

Section: File Downloads Product Attachments

Downloads on the Product Level

Go to PRODUCTS ⟶ Inventory ⟶ Catalog, click on the desired product and select the Attachments tab.

File Downloads Product Attachments

From here, the store owner can add a new attachment by clicking the Add New Attachments button. This will show the same workspace as in the Manage Attachments section.

Add Attachments button allows to select the existing attachments that have been uploaded in the "Manage Attachments" section.

File Downloads Product Attachments

This shows the attachment grid with the possibility to manually select the desired ones. Click the Add Selected Attachments to apply them to the product.

Be sure to click the Save button on the Product Edit workspace to apply the changes.

Attachment Widgets

Displaying the attachments via the Magento 2 widgets give you the flexible functionality to insert the file attachments on any page of your store, including the pages of 3rd party solutions (if they support Magento 2 widgets).

The extension adds 2 new types of Magento 2 widgets:
- Attachment Sections - this type of widget allows displaying the sections of the attachments.
- Attachments - this type of widget allows displaying the attachments.

To create a new widget go to CONTENT ⟶ Widgets and click on "Add new widget" button. Then you should choose either "Mageworx Attachment Sections" or "Mageworx Attachments" widget type and a theme you want to insert this widget to.

The "Storefront Properties" section is standard Magento 2 section. Here you can set the general parameters of the widget and define the pages you want to add this widget to.

The "Widget Options" section allows you to choose whether you want to display all attachements/sections or specific ones only.

Product Attachments on CMS page

Go to CONTENT ⟶ Pages and select the desired page.

File Downloads on CMS page

Add the following code to the body of the page:

{{block class="MageWorx\Downloads\Block\Links" id="2,1" title="My files"}}

where

  • id – ID numbers of the files you need to display. They can be found out in the attachments grid. Use all instead of numbers for all the products.

  • title – a title of a block with the files on a CMS page.

    File Downloads on CMS page

The way how this block will be seen on the frontend.

It is also possible to add all the attachments assigned to some section by adding another code:

{{block class="MageWorx\Downloads\Block\Section\Links" id="2,1" title="My files"}}
where

  • id - ID numbers of the section you need to display. They can be found in the sections grid. Use all instead of numbers for all the products.

  • title – a title of a block with the files on a CMS page.

Product Attachments on the Category Page

To add the downloadble files to the category pages, you should use Magento 2 widgets.

Product Attachments On the Third-Party Themes Product Pages

Several third-party themes have the possibility to add the CMS block on the Product tab. If this is possible, create the block and add this code:

{{block class="MageWorx\Downloads\Block\Catalog\Product\Attachments" template="MageWorx_Downloads::attachment_container.phtml"}}

File Downloads on CMS page

Select this block in the theme's configuration as the product tab block.

Import/Export

Import/Export Sections

The extension has the possibility to export the downloads sections and to import them. Log into the Magento Admin panel and go to SYSTEM ⟶ Data Transfer ⟶ Import/Export Sections.

File Downloads Sections Configuration

To check the structure of the CSV document, click the Export button or the Download Example CSV.

The structure of the CSV is as follows:

File Downloads Sections Configuration

The values of the Status can be either 1 (for the enabled section) or 0 (for the disabled one).

If you have our Magento 1 File Downloads & Product Attachments, you can export the categories (sections) from Magento 1 and then import the CSV file to Magento 2 installation. For this, log into the Magento 1 admin panel and go to CMS ⟶ File Downloads ⟶ Manage Categories and click the Export button:

File Downloads Sections Configuration

This CSV is the one that you should upload to the Magento 2 installation.

For the upload of the CSV file, click the Choose File button, select the CSV file and click the Import Sections.

Import/Export Attachments

The extension has the possibility to export the downloads attachments and to import them. Log into the Magento Admin panel and go to SYSTEM ⟶ Data Transfer ⟶ Import/Export Sections.

File Downloads Sections Configuration

To check the structure of the CSV document, click the Export button or the Download Example CSV.

The structure of the CSV is as follows:

"Section","Name","FilePath","URL","Description","Products","CustomerGroups","Stores","DownloadsLimit","Status"
"ManualsforHPLaptops","HP4720manual","HP/hp_4x20.pdf","","ManualsforHPLaptops(4xxxseries)","HP4520|||HP4720","General|||Wholesale","all","50","1"
"ManualsforDellLaptops","ManualsforDellLaptopshere","","https://drive.google.com/drive/folders/0B3k2yE04lnZ","","Area-51m|||m17","all","us_store","","1"

For any separate attachment the store owner should populate either FilePath or URL value. The FilePath is the relative file path from the base location of the uploaded attachments which is /pub/media/mageworx/downloads/import. So for the HP/hp_4x20.pdf the full server path of the PDF file is /pub/media/mageworx/downloads/import/HP/hp_4x20.pdf.

Note: you need to upload the attachment files to the /pub/media/mageworx/downloads/import folder before uploading the CSV file.

The Products block is the list of the SKUs that should be associated to this attachment file. The separator here is |||, so HP4520|||HP4720 actually means two products: HP4520 and HP4720.

For the CustomerGroups, you can use ||| as the separator for several customer groups or all for all customer groups.

For the Stores, you can use ||| as the separator for several store views or all for all store views.

The values of the Status can be either 1 (for the enabled attachment) or 0 (for the disabled one).

When the CSV file is being uploaded, the system may observe the problems preventing the correct connections of the products to the files. The store owner can put the checkbox for the Skip Product Checks setting for the situations when the SKU in the Products section is not found. The Skip File Checks setting allows ignoring the import of the attachment if the extension fails to find the file.

If you have our Magento 1 File Downloads & Product Attachments, you can export the files (attachments) from Magento 1 and then import the CSV file to Magento 2 installation. For this, log into the Magento 1 admin panel and go to CMS ⟶ File Downloads ⟶ Manage Files and click the Export button:

File Downloads Sections Configuration

Next, you need to transfer the file attachments from the Magento 1 installation to the Magento 2. For this, connect to your Magento 1 server via any FTP client and go to media/downloads. Copy all files and subfolders to the pub/media/mageworx/downloads/import on your Magento 2 server.

The exported CSV is the one that you should upload to the Magento 2 installation.

For the upload of the CSV file, click the Choose File button, select the CSV file and click the Import Attachments.

GraphQL API

The GraphQL API is added by the free DownloadsGraphQl addon.

1. ProductInterface describes the possible contents of this object.

It is expanded by MageWorx and attribute "mw_attachments" is added. The following table defines the attributes and objects.

icon_type: String. Attachment icon type
icon_type: Int. Attachment ID
name: String. Attachment name
url: String. Attachment URL
size_str: String. Attachment size
downloads_number: Int. Number of downloads
description: String. Attachment description
section_name: String. Section name
section_id: Int. escription: "Section ID

Request:

{
  products(filter: { sku: { eq: "24-MB01" } }) {
    items {
      name
      mw_attachments {
        tab_title
        block_title
        items {
          icon_type
          id
          name
          url
          size_str
          downloads_number
          description
          section_name
          section_id
        }
      }
    }
    }

Response:

{
  "data": {
    "products": {
      "items": [
        {
          "name": "Joust Duffle Bag",
          "mw_attachments": {
            "tab_title": "File Downloads Tab",
            "block_title": "File Downloads Block",
            "items": [
              {
                "icon_type": "pdf",
                "id": 1,
                "name": "test attachment",
                "url": "",
                "size_str": "2.4 MB",
                "downloads_number": 1,
                "description": "Test description 1",
                "section_name": "Default",
                "section_id": 1
              },
              {
                "icon_type": "",
                "id": 2,
                "name": "URL attach",
                "url": "http://exapmle.com",
                "size_str": null,
                "downloads_number": null,
                "description": "Test description 2",
                "section_name": "Test",
                "section_id": 2
              }
            ]
          }
        }
      ]
    }
  }
}

2. The mwFileDownloads query returns information about the Downloads (Product Attachments on CMS page, widgets, ect.)

Query attribute is defined below:

attachmentIds: Int. Attachment IDs
sectionIds: Int. Section IDs

By default, you can use the following attributes:

block_title: String @doc(description: "File Downloads Block Title"
is_group_by_section: Boolean. Indicates whether to group attachments by section
how_to_download_message: String. 'How to download' message
items: [MwAttachment] An array of Attachments

Request:

{
  mwFileDownloads(attachmentIds:[1]){
    block_title
    is_group_by_section
    how_to_download_message
    items {
      name
      section_name
    }
  }
}

Response:

{
  "data": {
    "mwFileDownloads": {
      "block_title": "File Downloads Title",
      "is_group_by_section": false,
      "how_to_download_message": "You have to %login% or %register% to download this file",
      "items": [
        {
          "name": "File attach",
          "section_name": "Default"
        }
      ]
    }
  }
}
The same information can be obtained for the Customer group using the authorization token.

PWA themes

The extension out of the box has the integrations with the following PWA themes:

  • Magento 2 Venia

Note

The free compatibility addon must be installed from https://github.com/mageworx/mageworx-downloads-veniapwa

Note

The free compatibility addon must be installed from https://github.com/mageworx/mageworx-downloads-scandipwa

Example of file downloads functionality on the ScandinPWA front-end:

Mageworx File Downloads

REST API

Get Guest Attachments By Product

The method needs the admin authorization token.

Magento returns all attachments for the specified product.

Request Format

GET index.php/rest/default/V1/mw-downloads-attachments/guest/product/1

Response JSON example

[
    {
        "section_id": 2,
        "section_name": "Test",
        "section_description": "test section description",
        "name": "test image",
        "description": "test image description",
        "link": "http://example.com/mwdownloads/download/link/id/2/",
        "type": "file",
        "filetype": "",
        "size": 13,
        "downloads": 2,
        "downloads_left": 0,
        "is_hidden": false
    },
    {
        "section_id": 1,
        "section_name": "Default",
        "section_description": "Default section description",
        "name": "test URL",
        "description": "test URL description",
        "link": "http://example.com/mwdownloads/download/link/id/1/",
        "type": "url",
        "filetype": "",
        "size": 0,
        "downloads": 1,
        "downloads_left": 0,
        "is_hidden": false
    }
]

Get Attachments

The method needs the admin authorization token.

Magento returns all attachments for the specified user and customer group

Request Format

GET index.php/rest/default/V1/mw-downloads-attachments/mine/product/1

Response JSON example

[
    {
        "section_id": 1,
        "section_name": "Default",
        "section_description": "Default section description",
        "name": "test URL",
        "description": "test URL description",
        "link": "http://example.com/mwdownloads/download/link/id/1/",
        "type": "url",
        "filetype": "",
        "size": 0,
        "downloads": 1,
        "downloads_left": 0,
        "is_hidden": false
    }
]

Create Attachment (via filedata)

The method needs the admin authorization token.

This method allows you to create an attachment in your Magento 2 store without direct upload to the server.

Request Format

POST index.php/rest/default/V1/mw-downloads-attachments

Payload

{
    "attachment": {        
        "section_id": 1,        
        "type": "file",
        "downloads": 0,
        "downloads_limit": 10,
        "date_modified": "",
        "date_added": "",
        "is_attach": false,
        "is_active": true, 
        "store_ids": [
            0
        ],
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "Default Name",
                "store_description": "Default Description"
            }            
        ],
        "customer_group_ids": [
            1,            
            3            
        ],
        "product_ids": [
            1,
            3,
            5
        ],
        "attachment_file_content": {
            "name": "example.jpg",
            "file_data": "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AVoAAxslRxwCAAAC4MQAOEJJTQQlAAAAAAAQ85v5wu2bo453NNzgjP+VmjhCSU0EOgAAAAAAewAAABAAAAABAAAAAAALcHJpbnRPdXRwdXQAAAAEAAAAAENsclNlbnVtAAAAAENsclMAAAAAUkdCQwAAAABJbnRlZW51bQAAAABJbnRlAAAAAENscm0AAAAATXBCbGJvb2wBAAAAC3ByaW50ZXJOYW1lVEVYVAAAAAEAAAA4QklNBDsAAAAAAYIAAAAQAAAAAQAAAAAAEnByaW50T3V0cHV0T3B0aW9ucwAAABAAAAAAQ3B0bmJvb2wAAAAAAENsYnJib29sAAAAAABSZ3NNYm9vbAAAAAAAQ3JuQ2Jvb2wAAAAAAENudENib29sAAAAAABMYmxzYm9vbAAAAAAATmd0dmJvb2wAAAAAAEVtbERib29sAAAAAABJbnRyYm9vbAAAAAAAQmNrZ09iamMAAAABAAAAAAAAUkdCQwAAAAMAAAAAUmQgIGRvdWJAb+AAAAAAAAAAAABHcm4gZG91YkBv4AAAAAAAAAAAAEJsICBkb3ViQG/gAAAAAAAAAAAAQnJkVFVudEYjUmx0AAAAAAAAAAAAAAAAQmxkIFVudEYjUmx0AAAAAAAAAAAAAAAAUnNsdFVudEYjUHhsQHLAAAAAAAAAAAAKdmVjdG9yRGF0YWJvb2wBAAAAAFBnUHNlbnVtAAAAAFBnUHMAAAAAUGdQQwAAAABTY2wgVW50RiNQcmNAWQAAAAAAADhCSU0D7QAAAAAAEAEsAAAAAQACASwAAAABAAI4QklNBCYAAAAAAA4AAAAAAAAAAAAAP4AAADhCSU0D8gAAAAAACgAA////////AAA4QklNBA0AAAAAAAQAAAAeOEJJTQQZAAAAAAAEAAAAHjhCSU0D8wAAAAAACQAAAAAAAAAAAQA4QklNJxAAAAAAAAoAAQAAAAAAAAACOEJJTQP1AAAAAABIAC9mZgABAGxmZgAGAAAAAAABAC9mZgABAKGZmgAGAAAAAAABADIAAAABAFoAAAAGAAAAAAABADUAAAABAC0AAAAGAAAAAAABOEJJTQP4AAAAAABwAAD/////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP//////////////////////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TVAgQ29yZSA1LjAtYzA2MCA2MS4xMzQzNDIsIDIwMTAvMDEvMTAtMTg6MDY6NDMgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxNy0wOS0xMVQyMjoxNTo0NiswNTozMCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1ICgxMi4weDIwMTAwMTE1IFsyMDEwMDExNS5tLjk5OCAyMDEwLzAxLzE1OjAyOjAwOjAwIGN1dG9mZjsgbSBicmFuY2hdKSAgV2luZG93cyIgeG1wOkNyZWF0ZURhdGU9IjIwMTctMDktMTFUMTY6NDA6MDYrMDU6MzAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMTctMDktMTFUMjI6MTU6NDYrMDU6MzAiIGRjOmZvcm1hdD0iaW1hZ2UvanBlZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoyQ0EyOTNBODEwOTdFNzExOEE1NEE1RkQ1NkIyNTUyRiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoyQ0EyOTNBODEwOTdFNzExOEE1NEE1RkQ1NkIyNTUyRiIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjJDQTI5M0E4MTA5N0U3MTE4QTU0QTVGRDU2QjI1NTJGIj4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6MkNBMjkzQTgxMDk3RTcxMThBNTRBNUZENTZCMjU1MkYiIHN0RXZ0OndoZW49IjIwMTctMDktMTFUMjI6MTU6NDYrMDU6MzAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDUzUgKDEyLjB4MjAxMDAxMTUgWzIwMTAwMTE1Lm0uOTk4IDIwMTAvMDEvMTU6MDI6MDA6MDAgY3V0b2ZmOyBtIGJyYW5jaF0pICBXaW5kb3dzIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8P3hwYWNrZXQgZW5kPSJ3Ij8+/+4ADkFkb2JlAGRAAAAAAf/bAIQAAQEBAQEBAQEBAQIBAQECAgEBAQECAgICAgICAgMCAwMDAwIDAwQEBAQEAwUFBQUFBQcHBwcHCAgICAgICAgICAEBAQECAgIEAwMEBwUEBQcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI/8AAEQgBLAEsAwERAAIRAQMRAf/dAAQAJv/EAaIAAAAGAgMBAAAAAAAAAAAAAAcIBgUECQMKAgEACwEAAAYDAQEBAAAAAAAAAAAABgUEAwcCCAEJAAoLEAACAQIFAgMEBgYFBQEDBm8BAgMEEQUGIRIABzFBEwhRImEUcYEykQmhI/DB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",            
            "extension_attributes": {}
        },
        "extension_attributes": {}
    }
}

Response JSON example

{
    "id": 12,
    "section_id": 1,
    "is_attach": false,
    "filename": "/e/x/example.jpg",
    "url": "",
    "type": "file",
    "filetype": "jpg",
    "size": 51085,
    "downloads": 0,
    "downloads_limit": 10,
    "date_modified": "2021-04-08 08:26:03",
    "date_added": "2021-04-08 08:26:03",
    "is_active": true,
    "store_ids": [
        0
    ],
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "Default Name",
            "store_description": "Default Description"
        }
    ],
    "customer_group_ids": [
        1,
        3
    ],
    "product_ids": [
        1,
        3,
        5
    ]
}

Create attachment (direct file upload)

The method needs the admin authorization token.

You can create at attachment via API. You should upload the file to the /pub/media/mageworx/downloads/import/ folder first.

Request Format

POST index.php/rest/default/V1/mw-downloads-attachments

Payload

{
    "attachment": {        
        "section_id": 1,        
        "type": "file",
        "downloads": 0,
        "downloads_limit": 10,
        "date_modified": "",
        "date_added": "",
        "is_attach": false,
        "is_active": true, 
        "filename": "/test.jpg",
        "filetype": "jpg",
        "store_ids": [
            0
        ],
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "Default Name",
                "store_description": "Default Description"
            }            
        ],
        "customer_group_ids": [
            0,
            1,            
            3            
        ],
        "product_ids": [
            1,
            3,
            5
        ],        
        "extension_attributes": {}
    }
}

Payload

{
    "attachment": {        
        "section_id": 1,        
        "type": "file",
        "downloads": 0,
        "downloads_limit": 10,
        "date_modified": "",
        "date_added": "",
        "is_attach": false,
        "is_active": true, 
        "filename": "/test.jpg",
        "filetype": "jpg",
        "store_ids": [
            0
        ],
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "Default Name",
                "store_description": "Default Description"
            }            
        ],
        "customer_group_ids": [
            0,
            1,            
            3            
        ],
        "product_ids": [
            1,
            3,
            5
        ],        
        "extension_attributes": {}
    }
}

Response JSON example

{
    "id": 12,
    "section_id": 1,
    "is_attach": false,
    "filename": "/e/x/test.jpg",
    "url": "",
    "type": "file",
    "filetype": "jpg",
    "size": 51085,
    "downloads": 0,
    "downloads_limit": 10,
    "date_modified": "2021-04-08 08:26:03",
    "date_added": "2021-04-08 08:26:03",
    "is_active": true,
    "store_ids": [
        0
    ],
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "Default Name",
            "store_description": "Default Description"
        }
    ],
    "customer_group_ids": [
        1,
        3
    ],
    "product_ids": [
        1,
        3,
        5
    ]
}

Get Attachment By Id

The method needs the admin authorization token.

You can get file attachment by its Id.

Request Format

GET index.php/rest/default/V1/mw-downloads-attachments/1

Response JSON example

{
    "id": 1,
    "section_id": 1,
    "is_attach": false,
    "filename": "",
    "url": "https://devdocs.magento.com",
    "type": "url",
    "filetype": "",
    "size": 0,
    "downloads": 1,
    "downloads_limit": 0,
    "date_modified": "2021-04-07 18:37:12",
    "date_added": "2021-04-07 18:01:27",
    "is_active": true,
    "store_ids": [
        0
    ],
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "test URL",
            "store_description": "test description"
        }
    ],
    "customer_group_ids": [
        0,
        1,
        2,
        3
    ],
    "product_ids": [
        1
    ]
}

Get Attachment List

The method needs the admin authorization token.

You can get file attachment by its Id.

Request Format

GET index.php/rest/default/V1/mw-downloads-attachments/search?searchCriteria=

Response JSON example

{
    "items": [
        {
            "id": 1,
            "section_id": 1,
            "is_attach": false,
            "filename": "/m/a/masha_5.jpg",
            "url": "",
            "type": "file",
            "filetype": "jpg",
            "size": 11968,
            "downloads": 1,
            "downloads_limit": 1,
            "date_modified": "2021-04-07 20:33:39",
            "date_added": "2021-04-07 20:33:39",
            "is_active": true,
            "store_ids": [
                0
            ],
            "store_locales": [
                {
                    "store_id": 0,
                    "store_name": "Test Attachment",
                    "store_description": "Test Attachment Description"
                }
            ],
            "customer_group_ids": [
                0,
                1
            ],
            "product_ids": [
                1,
                2
            ]
        },
        {
            "id": 2,
            "section_id": 1,
            "is_attach": false,
            "filename": "",
            "url": "https://devdocs.magento.com",
            "type": "url",
            "filetype": "",
            "size": 0,
            "downloads": 1,
            "downloads_limit": 0,
            "date_modified": "2021-04-07 18:37:12",
            "date_added": "2021-04-07 18:01:27",
            "is_active": true,
            "store_ids": [
                0
            ],
            "store_locales": [
                {
                    "store_id": 0,
                    "store_name": "test URL",
                    "store_description": "test description"
                }
            ],
            "customer_group_ids": [
                0,
                1,
                2,
                3
            ],
            "product_ids": [
                1
            ]
        }
    ],
    "search_criteria": {
        "filter_groups": [],
        "sort_orders": [
            {
                "field": "attachment_id",
                "direction": "DESC"
            }
        ]
    },
    "total_count": 2
}

Update Attachment

The method needs the admin authorization token.

You can update any attachment.

Request Format

PUT index.php/rest/default/V1/mw-downloads-attachments/2

Payload

{
    "attachment": {
        "id": 2,
        "section_id": 1,
        "is_attach": true,
        "filename": "/m/a/masha_5.jpg",
        "url": "",
        "type": "file",
        "filetype": "",
        "size": 11968,
        "downloads": 2,
        "downloads_limit": 5,
        "date_modified": "2021-03-13 16:45:43",
        "date_added": "2021-03-13 15:54:38",
        "is_active": true,
        "store_ids": [
            0
        ],
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "Default Name 666",
                "store_description": "Default Description 666"
            }
        ],
        "customer_group_ids": [
            0,
            1,
            2
        ],
        "product_ids": [
            1,
            3
        ]
    }
}

Response JSON example

{
    "id": 2,
    "section_id": 1,
    "is_attach": true,
    "filename": "/m/a/masha_5.jpg",
    "url": "",
    "type": "file",
    "filetype": "jpg",
    "size": 11968,
    "downloads": 2,
    "downloads_limit": 5,
    "date_modified": "2021-04-07 20:50:34",
    "date_added": "2021-03-13 15:54:38",
    "is_active": true,
    "store_ids": [
        0
    ],
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "Default Name 666",
            "store_description": "Default Description 666"
        }
    ],
    "customer_group_ids": [
        0,
        1,
        2
    ],
    "product_ids": [
        1,
        3
    ]
}

Delete Attachment By ID

The method needs the admin authorization token.

You should specify attachment Id that should be deleted.

Request Format

DEL index.php/rest/default/V1/mw-downloads-attachments/2

Response JSON example

true

Get Section By Id

The method needs the admin authorization token.

You can get attachment section by Id.

Request Format

GET index.php/rest/default/V1/mw-downloads-sections/1

Response JSON example

{
    "id": 1,
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "Default",
            "store_description": "Default section description"
        }
    ],
    "is_active": true
}

Get Section List

The method needs the admin authorization token.

You can get info about all attachment sections.

Request Format

GET index.php/rest/default/V1/mw-downloads-sections/search?searchCriteria=

Response JSON example

{
    "items": [
        {
            "id": 1,
            "store_locales": [
                {
                    "store_id": 0,
                    "store_name": "Default",
                    "store_description": "Default section description"
                }
            ],
            "is_active": true
        },
        {
            "id": 6,
            "store_locales": [
                {
                    "store_id": 0,
                    "store_name": "Images",
                    "store_description": ""
                }
            ],
            "is_active": true
        }
    ],
    "search_criteria": {
        "filter_groups": []
    },
    "total_count": 2
}

Create Sections

The method needs the admin authorization token.

You can create attachment sections.

Request Format

POST index.php/rest/default/V1/mw-downloads-sections

Payload

{
    "section": {       
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "us",
                "store_description": "Default Description"
            }
        ],
        "is_active": true        
    }
}

Response JSON example

{
    "id": 3,
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "us",
            "store_description": "Default Description"
        }
    ],
    "is_active": true
}

Update Sections

The method needs the admin authorization token.

You can update attachment sections.

Request Format

PUT index.php/rest/default/V1/mw-downloads-sections

Payload

{
    "section": {    
        "id": 10,
        "store_locales": [
            {
                "store_id": 0,
                "store_name": "updated name",
                "store_description": "updated description"
            },
            {
                "store_id": 1,
                "store_name": "updated name for store 1",
                "store_description": "updated description for store 1"
            }
        ],
        "is_active": true        
    }
}

Response JSON example

{
    "id": 10,
    "store_locales": [
        {
            "store_id": 0,
            "store_name": "updated name",
            "store_description": "updated description"
        },
        {
            "store_id": 1,
            "store_name": "updated name for store 1",
            "store_description": "updated description for store 1"
        }
    ],
    "is_active": true
}

Delete Section By ID

The method needs the admin authorization token.

You should specify section Id that should be deleted.

Request Format

DEL index.php/rest/default/V1/mw-downloads-sections/10

Response JSON example

true

Got Questions?

MageWorx offers FREE lifetime support and updates for any extension developed for Magento. Need help with the extensions? Feel free submit a ticket from https://www.mageworx.com/support/ 



MageWorx offers outstanding services developing custom-tailored solutions for Magento platform to attain your eCommerce objectives. Our professional impassioned team provides profound and custom oriented development of your project in a short timeframe.