Overview

EcoStruxure™ Letter of Agreement API simplifies the process of getting signed letters of agreement from customers, making it easier and more secure than ever before. With this API, Schneider Electric can streamline their digital offers and make the signing process more efficient. This is a huge advantage in today's fast-paced business world, where time is money and efficiency is key.

The API ensures that all agreements are legally binding and provides an added layer of security to protect sensitive information. By digitizing this process, Schneider Electric can reduce the risk of errors or lost paperwork, while also improving customer satisfaction by providing a more convenient way to sign agreements. Overall, the Letter of Agreement API is a smart investment for any business looking to streamline their operations and stay ahead in today's competitive marketplace.

API overview and usage

The EcoStruxure™ Letter of Agreement API is designed for internal applications within Schneider Electric. The API enables applications to impersonate customers and create letter of agreement requests. Below are the steps to use the API effectively:

Step 1: Generate an Access Token

To interact with the API on behalf of a customer, you need to generate an access token using the /v1/oauth-impersonate/token endpoint. This endpoint requires the following parameters:

  • grant_type (string): Set this value to "user_token".
  • client_id (string): The consumer key of the API product.
  • client_secret (string): The consumer secret of the API product.
  • email (string): The email ID of the customer to be impersonated.

Make a POST request to the /v1/oauth-impersonate/token endpoint with the required parameters using your preferred method (e.g., cURL). Here's an example cURL command:

curl -X POST 'https://api.exchange.se.com/ecostruxure/v1/oauth-impersonate/token' \

-H 'Content-Type: application/x-www-form-urlencoded' \

--data-urlencode 'email=john.doe@yopmail.com' \

--data-urlencode 'grant_type=user_token' \

--data-urlencode 'client_aid=abcdeff' \

--data-urlencode 'client_secret=******'

The response will include an access token, which you should store securely for subsequent API requests.

Step 2: Create a Letter of Agreement

Once you have obtained the access token, you can use it to create a letter of agreement request using the /loa/v1/agreements endpoint. This endpoint allows you to initiate the creation of a letter of agreement.

Make a POST request to the /loa/v1/agreements endpoint with the following information in the request body:

  • templateId (string): The ID of the template to be used for the agreement.
  • signer (object): Details of the signatory, including their name and email.
  • cc (object, optional): Details of an individual to be cc'ed in the agreement exchange emails.
  • formData (array, optional): An array of form field name and value pairs to pre-populate the agreement.
  • notification (object, optional): Notification settings for agreement status changes.

Here's an example request body for creating an agreement with a signer and notification settings:

{

  "templateId": "1891f288-eed5-4253-8934-a1160207b6b9",

  "signer": {

    "name": "Signer Example",

    "email": "example@example.com"

  },

  "notification": {

    "isEnabled": true,

    "emails": [

      "example@se.com"

    ]

  }

}

Ensure you include the access token obtained in the previous step in the request headers as a Bearer token.

The API will respond with a status code and the created agreement object if successful.

Note: Remember to handle any potential errors by examining the response status codes and error messages provided in the API documentation.

Documentation

How to sign up

This is an internal API product. Please contact ecostruxure.openness@se.com for access.

Authentication guide

The API is meant for Schneider Electric internal applications, application can choose one of following method to generate token and invoke API on behalf of a customer.

Schneider Electric application integrated with cIAM

If the Schneider Electric application is integrated with cIAM, application will already have access to cIAM id_token. Schneider Electric application can exchange this id_token for API access token using Exchange cIAM id_token operation. CURL example below. This way the token generated is associated with the cIAM identity, the consent provided by the user will be stored against the cIAM identity.

curl -X POST 'https://api.exchange.se.com/ecostruxure/v1/oauth/token' \

-H 'Content-Type: application/x-www-form-urlencoded' \

--data-urlencode 'id_token=base64encodedidtokenfromciam' \

--data-urlencode 'grant_type=id_token' \

--data-urlencode 'client_id=abcdeff' \

--data-urlencode 'client_secret=******'

Schneider Electric application not integrated with cIAM

If the Schneider Electric application is not integrated with cIAM, application can generate an access token using OAuth User Impersonation operation. CURL example below. This way the token generated is associated with the cIAM identity, the consent provided by the user will be stored against the cIAM identity.

curl -X POST 'https://api.exchange.se.com/ecostruxure/v1/oauth-impersonate/token' \

-H 'Content-Type: application/x-www-form-urlencoded' \

--data-urlencode 'email=john.doe@yopmail.com' \

--data-urlencode 'grant_type=user_token' \

--data-urlencode 'client_id=abcdeff' \

--data-urlencode 'client_secret=******'

UserAccessToken

Security schema accepts token generated through exchange of cIAM id_token or impersonation as bearer authorization token.

Security Scheme Type: HTTP
HTTP Authorization Scheme bearer

Support

Contact the SE Exchange support team at exchange.support@se.com and include:

  • Endpoint URL
  • Request/Response
  • Any additional information like Screenshots, Postman collections.

Release Notes

version Notes
1.3.0 Ability to delete an agreement
1.2.0 Ability to override email subject and message while creating an agreement
1.1.0 Ability to create LOA based on previous agreement
1.0.0 Initial version