> For the complete documentation index, see [llms.txt](https://200ok.gitbook.io/200ok-documents/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://200ok.gitbook.io/200ok-documents/user-manual/lws/transform-data-on-demand-etl-as-an-api.md).

# Transform Data on Demand: ETL as an API!

With recent enhancements in version 4.6 and onwards, you can now securely invoke an ETL from outside Salesforce, as long as you have the proper authentication.

1. To check the ETL as API let us [Create an ETL](/200ok-documents/user-manual/etl/create-your-etl.md) .
2. In the target Salesforce org, ETL channel has to be created and configured with required Data Source/Transform Source/Load Source details as needed.
3. Copy the ETL name and paste it in the endpoint url.
4. Endpoint URL will be in the below format&#x20;

**https\://\<YOUR\_DOMAIN\_URL>/services/apexrest/lwapic/lws/etl/ETL\_CHANNEL\_NAME?recordId=RECORD\_ID\&type=TYPE**

YOUR\_DOMAIN\_URL - Target Salesforce org domain URL

ETL\_CHANNEL\_NAME - ETL Channel unique name

RECORD\_ID - Dynamic record ID(optional)

TYPE - (Optional) It can be used one of the following: E, T, L, ET, EL, TL, ETL.&#x20;

It is considered as ETL by default, if not specified.

\
**NOTE**: If Load is used while invoking, Extracted/Transformed JSON cannot be retrieved using this callout. In case, either of E, T, ET is used, the Extracted or Transformed JSON is returned as the Response Body.

**Method**:

GET/POST

\
**Header**:

Authorization for a valid Salesforce User(or Integration User)

Content-Type(if applicable, such as for POST method)

Other Header Information(as required)

**Body**:

Custom JSON(if applicable, such as for POST method)

\
\
\
\
This is how you can power up your ETL by invoking it as an API!

\
&#x20;
