Skip to content

Commit

Permalink
update component articles for 24-45 (#1408)
Browse files Browse the repository at this point in the history
* components-24.45

---------

Co-authored-by: Erroneous0ne <home@MacBook-Pro.local>
  • Loading branch information
erroneous0ne and Erroneous0ne authored Nov 6, 2024
1 parent 86345d3 commit 1799b0d
Show file tree
Hide file tree
Showing 27 changed files with 456 additions and 98 deletions.
Binary file added assets/img/components/icons/looker-studio.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img/components/icons/youtube.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
116 changes: 66 additions & 50 deletions content/_components/akeneo/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,26 @@ description: Akeneo Component is designed to connect Akeneo API.
icon: akeneo.png
icontext: Akeneo Component
category: akeneo
updatedDate: 2022-10-07
ComponentVersion: 1.0.0
updatedDate: 2024-11-07
ComponentVersion: 2.0.0
---

## Table of Contents

* [Description](#description)
* [Credentials](#credentials)
* [Actions](#actions)
* [Make Raw Request](#make-raw-request)
* [Delete Object By ID](#delete-object-by-id)
* [Lookup Object By ID](#lookup-object-by-id)
* [Lookup Objects (plural)](#lookup-objects-plural)
* [Upsert Object](#upsert-object)
* [Triggers](#triggers)
* [Fetch New/Updated Objects Polling](#fetch-newupdated-objects-polling)

## Description
Akeneo Component is designed to connect Akeneo API.

## Credentials

To use this component you need to create own API access integration credentials:
Expand All @@ -29,72 +45,61 @@ Component credentials configuration fields:

>**Warning:** To maintain a smooth experience, we recommend reusing stored credentials where possible. Duplicating secrets across OAuth clients can result in errors and complications.
## Triggers
## Actions

### Get New and Updated Objects Polling
### Make Raw Request

Retrieve all the updated or created objects within a given time range.
Executes custom request.

#### Configuration Fields

* **Object Type** - (dropdown, required): Object-type to lookup on. E.g `Products`.
* **Timestamp field to poll on** - (dropdown, optional): Can be either `Last Modified` or `Created` (updated or new objects, respectively). Defaults to `Last Modified`.
* **Emit behavior** - (dropdown, optional): Indicates emit objects behavior - `Emit individually` (by default) or `Emit page`.
* **Size of Polling Page** - (optional, positive integer, defaults to 100, max 100): Indicates the size of pages to be fetched.
* **Single Page per Interval** - (boolean, optional): Indicates that if the number of changed records exceeds the maximum number of results in a page, instead of fetching the next page immediately, wait until the next flow start to fetch the next page. Defaults to false.
* **Start Time** - (string, optional): The timestamp, in ISO8601 format, to start polling from (inclusive). Default value is the beginning of time (January 1, 1970 at 00:00.000).
* **End Time** - (string, optional): The timestamp, in ISO8601 format, to end at (inclusive). Default value is never.
* **Don't throw error on 404 Response** - (optional, boolean): Treat 404 HTTP responses not as error, defaults to `false`.

#### Input Metadata

There is no Input Metadata.
* **Url** - (string, required): Path of the resource relative to the base URL.
* **Method** - (string, required): HTTP verb to use in the request, one of `GET`, `POST`, `PUT`, `PATCH`, `DELETE`.
* **Request Body** - (object, optional): Body of the request to send.

#### Output Metadata
- For `Emit page`: An object with key ***results*** that has an array as its value.
- For `Emit Individually`: Each object fill the entire message.

#### Limitations

Amount of items retrieved in sample is limited to 10. It's done to decrease load on platform UI.

## Actions
* **Status Code** - (number, required): HTTP status code of the response.
* **HTTP headers** - (object, required): HTTP headers of the response.
* **Response Body** - (object, optional): HTTP response body.

### Upsert Object
### Delete Object By ID

Updates/creates object.
Delete a single object by its ID.

#### Configuration Fields

* **Object Type** - (dropdown, required): Object-type to upsert. E.g `Users`.
* **Create or update existing object** - (dropdown, required): Options are "Create new" or "Update existing".
* **Make GET request after object created/updated** - (checkbox, optional): Make GET request after object created/updated. If false - only object ID will be emitted.
* **Object Type** - (string, required): Object-type to lookup on. E.g `Users`.

#### Input Metadata

Dynamically generated fields according to chosen `Upsert Schema`.
* **ID Value** - (string, required): Value for ID of the object to delete.

#### Output Metadata

If `Make GET request after object created/updated` is `true`:
Dynamically generated fields according to chosen `Upsert Schema`.
If `Make GET request after object created/updated` is `false`:
* **ID** - (string, optional): ID of the upserted object.
* **ID** - (string, required): ID of the deleted object.

### Delete Object By ID
### Lookup Object By ID

Delete a single object by its ID.
Lookup a single object by it's id.

#### Configuration Fields

* **Object Type** - (string, required): Object-type to lookup on. E.g `Users`.
* **Allow criteria to be omitted** - (boolean, optional): If selected field `ID Value` becomes optional.
* **Allow zero results** - (boolean, optional): When selected, if the object is not found - an empty object will be returned instead of throwing error.

#### Input Metadata

* **ID Value** - (string, required): Value for ID of the object to delete.
* **ID Value** - (string, required unless `Allow criteria to be omitted` is selected): Value for unique search criteria in `Lookup Criteria` configuration field.

#### Output Metadata

* **ID** - (string, required): ID of the deleted object.
Object with result of lookup as value.

### Lookup Objects (plural)

Expand All @@ -121,40 +126,51 @@ For `Emit All` & `Emit Page` mode: An object, with key `results` that has an arr
For `Emit Individually` mode: Each object which fill the entire message.
If `Emit only total count of results matching search criteria` is set `true` for `Emit All` mode: only `totalCountOfMatchingResults` with total amount of objects found by search criteria will be emitted.

### Lookup Object By ID
### Upsert Object

Lookup a single object by it's id.
Updates/creates object.

#### Configuration Fields

* **Object Type** - (string, required): Object-type to lookup on. E.g `Users`.
* **Allow criteria to be omitted** - (boolean, optional): If selected field `ID Value` becomes optional.
* **Allow zero results** - (boolean, optional): When selected, if the object is not found - an empty object will be returned instead of throwing error.
* **Object Type** - (dropdown, required): Object-type to upsert. E.g `Users`.
* **Create or update existing object** - (dropdown, required): Options are "Create new" or "Update existing".
* **Make GET request after object created/updated** - (checkbox, optional): Make GET request after object created/updated. If false - only object ID will be emitted.

#### Input Metadata

* **ID Value** - (string, required unless `Allow criteria to be omitted` is selected): Value for unique search criteria in `Lookup Criteria` configuration field.
Dynamically generated fields according to chosen `Upsert Schema`.

#### Output Metadata

Object with result of lookup as value.
If `Make GET request after object created/updated` is `true`:
Dynamically generated fields according to chosen `Upsert Schema`.
If `Make GET request after object created/updated` is `false`:
* **ID** - (string, optional): ID of the upserted object.

### Make Raw Request
## Triggers

Executes custom request.
### Fetch New/Updated Objects Polling

Retrieve all the updated or created objects within a given time range based on the object type. Certain objects support filtering based on both Created and Updated fields while others only on the Updated criteria. The [Filtering documentation](https://api.akeneo.com/documentation/filter.html) provides the full list of available options.

#### Configuration Fields

* **Don't throw error on 404 Response** - (optional, boolean): Treat 404 HTTP responses not as error, defaults to `false`.
* **Object Type** - (dropdown, required): Object-type to lookup on. E.g `Products`.
* **Timestamp field to poll on** - (dropdown, optional): Can be either `Last Modified` or `Created` (updated or new objects, respectively). Defaults to `Last Modified`.
* **Emit behavior** - (dropdown, optional): Indicates emit objects behavior - `Emit individually` (by default) or `Emit page`.
* **Size of Polling Page** - (optional, positive integer, defaults to 100, max 100): Indicates the size of pages to be fetched.
* **Single Page per Interval** - (boolean, optional): Indicates that if the number of changed records exceeds the maximum number of results in a page, instead of fetching the next page immediately, wait until the next flow start to fetch the next page. Defaults to false.
* **Start Time** - (string, optional): The timestamp, in ISO8601 format, to start polling from (inclusive). Default value is the beginning of time (January 1, 1970 at 00:00.000).
* **End Time** - (string, optional): The timestamp, in ISO8601 format, to end at (inclusive). Default value is never.

#### Input Metadata

* **Url** - (string, required): Path of the resource relative to the base URL.
* **Method** - (string, required): HTTP verb to use in the request, one of `GET`, `POST`, `PUT`, `PATCH`, `DELETE`.
* **Request Body** - (object, optional): Body of the request to send.
There is no Input Metadata.

#### Output Metadata
- For `Emit page`: An object with key ***results*** that has an array as its value.
- For `Emit Individually`: Each object fill the entire message.

* **Status Code** - (number, required): HTTP status code of the response.
* **HTTP headers** - (object, required): HTTP headers of the response.
* **Response Body** - (object, optional): HTTP response body.
#### Limitations

Number of items retrieved in a sample is limited to 10. This is done to reduce the load on the platform’s UI. Flow runtime will not have any limitations.
15 changes: 12 additions & 3 deletions content/_components/akeneo/technical-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,21 @@ description: Technical Notes for the Akeneo component
icon: akeneo.png
icontext: Akeneo Component
category: akeneo
updatedDate: 2022-10-07
ComponentVersion: 1.0.0
updatedDate: 2024-11-07
ComponentVersion: 2.0.0
---
## Changelog

### 1.0.0 (October 7, 2022)
### 2.0.0 (November 07, 2024)

* The component has undergone a significant refactor. Object types in actions and triggers have been reviewed and corrected. Internal code has been updated, and API inconsistencies have been resolved.
* Changes include:
* Node.js version bumped from 16 to 20
* Sailor bumped from 2.7.0 to 2.7.3
* Axios bumped from 0.27.2 to 1.7.7
* component-commons-library bumped from 3.1.0 to 3.2.1

### 1.0.0 (October 07, 2022)

* Added `Make Raw Request` Action
* Added `Lookup Object By ID` Action
Expand Down
72 changes: 67 additions & 5 deletions content/_components/email/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,25 @@ description: In this case it is not about a particular application but the email
icon: email.png
icontext: Email component
category: email
ComponentVersion: 1.2.4
updatedDate: 2023-01-13
ComponentVersion: 1.3.0
updatedDate: 2024-11-07
---

## How works
## Table of Contents
- [General information](#general-information)
- [Description](#description)
- [Environment variables](#environment-variables)
- [Actions](#actions)
- [Send Email](#send-email)
- [Configuration Fields](#configuration-fields)
- [Input Metadata](#input-metadata)
- [Output Metadata](#output-metadata)

The component sends a new transaction through Mandrill using the [Send](https://mandrillapp.com/api/docs/messages.JSON.html#method=send) API resource for each incoming message.
## General information

## Requirements
### Description

Email component using [Mandrill](http://mandrillapp.com/) REST API.

### Environment variables

Expand Down Expand Up @@ -58,10 +68,62 @@ For each incoming message the component send a new transactional message through
* **Bcc** - (string, optional): Comma separated list of E-mail addresses to receive a blind copy of the mail
* **Subject** - (string, required): Subject of the E-mail
* **Body** - (string, required): The content of the E-mail to be sent. If body is a JSON object/array, then it will be stringified
* **HTML Body** - (string, optional): The HTML content of the E-mail to be sent. Either the 'Text Body' or 'HTML Body' field must be filled in. If both are filled in, the 'HTML Body' will be used.
* **Attachments** (array, optional): Series of objects with the following format:
* **Attachment URL** (string, required): URL to file (platform storage or external)
* **Filename** (string, required): Name of the attached file that will appear in the received email

An HTML body example:
```
{
"to": "email@example.com",
"subject": "HTML content",
"textBody": "Poor text content",
"htmlBody": " <head>
<meta charset=\"UTF-8\">
<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">
<title>Sample Email</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 20px;
}
.container {
background-color: #ffffff;
padding: 20px;
border-radius: 5px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.btn {
display: inline-block;
padding: 10px 15px;
font-size: 16px;
color: white;
background-color: #007BFF;
text-decoration: none;
border-radius: 5px;
}
.btn:hover {
background-color: #0056b3;
}
</style>
</head>
<body>
<div class=\"container\">
<h1>Hello, [Recipient's Name]!</h1>
<p>Thank you for subscribing to our newsletter. We're excited to have you on board!</p>
<p>Stay tuned for updates, tips, and exclusive offers just for you.</p>
<p>To get started, click the button below:</p>
<a href=\"https://www.example.com\" class=\"btn\">Get Started</a>
<p>Best regards,<br>Your Company Name</p>
</div>
</body>
</html>"
}
```

#### Output Metadata

As a result of sending you will get object **"results"** which contain result entities of sending messages for each recipient, consists of:
Expand Down
10 changes: 8 additions & 2 deletions content/_components/email/technical-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,20 @@ description: Technical Notes for the Email component
icon: email.png
icontext: Email component
category: email
ComponentVersion: 1.2.4
updatedDate: 2023-01-13
ComponentVersion: 1.3.0
updatedDate: 2024-11-07
redirect_from:
- /components/lookup-table/changelog.html
---

## Changelog

### 1.3.0 (November 07, 2024)

* Introduced the new HTML body field to make it possible sending both an HTML and a text contents. The text one becomes optional and will only be used if a HTML content is either not supported by a receiver or is empty. The backward compatibility has not broken
* Update Sailor version to 2.7.3
* Migrated to Node.js 20

### 1.2.4 (January 13, 2023)

* Fixed a typo in logs
Expand Down
Loading

0 comments on commit 1799b0d

Please sign in to comment.