Skip to content

CarbonCopyAdd

Lee Bolgatz edited this page Oct 28, 2022 · 2 revisions

Back To Common API Calls


Add a Carbon Copy which is billed to the Session Network/Mailbox.

  public int CarbonCopyAdd(string SessionID,
                           int ECGridIDFrom,
                           int ECGridIDTo,
                           int ECGridIDCCFrom,
                           int ECGridIDCCTo,
                           string GSFrom,
                           string GSTo,
                           string TransactionSet)

Parameters


Returns

int


Remarks

This method adds a Carbon Copy configuration to the ECGrid Infrastructure. If an Interchange passes through ECGrid with a Sender & Receiver that matches the ECGridIDFrom and ECGridIDTo parameters, then a copy of that Interchange will be created using ECGridIDCCFrom and ECGridIDCCTo as the copy's Sender & Receiver.

TransactionSet is used to limit Carbon Copies to a specific Transaction Set and is standard dependant. Only the first transaction set in an interchange is compared. If a match, the entire interchange is forwarded. If left blank, will match all transaction sets. X12 matches ST01, EDIFACT matches UNH02, Tradacoms matches MHD02.

In order to make sure that data is not copied without proper authorization, either the ECGridIDFrom or ECGridIDTo must be on the Network/Mailbox making the request. Since it is possible that a legitimate requester may be the Carbon Copy Receiver, NetOps can override this limitation when authorization has been obtained from either the Original Sender or Original Receiver.

Carbon Copies are immediately active. Be sure to an Interconnect Request is in place for the ECGridIDCCFrom and ECGridIDCCTo before creating the Carbon Copy.

Please review Carbon Copies for limitations and special considerations depending on the Receiver's Network.

Any Carbon Copy created by this method will have any billable portions charged to the Session Network/Mailbox which created it. To charge a Carbon Copy to another Network/Mailbox use CarbonCopyAddEx().


Code Example

C#

using System.Xml;
using System.Web.Services.Protocols;
using ECGridService = <ProjectName>.net.ecgridos;

try
{
    using (ECGridService.ECGridOSAPIv3 ECGrid = new ECGridService.ECGridOSAPIv3())
    {
        try
        {
            string SessionID = "00000000-0000-0000-0000-000000000000";
            int ECGridIDFrom = 15;
            int ECGridIDTo = 34;
            int ECGridIDCCFrom = 56;
            int ECGridIDCCTo = 56;
            string TransactionSet = "850";

            int CarbonCopyID = ECGrid.CarbonCopyAdd(SessionID, ECGridIDFrom, ECGridIDTo, ECGridIDCCFrom, ECGridIDCCTo, TransactionSet);

        }
        catch (SoapException SoapEx)
        {
            // See SOAP Exceptions in the Appendix
            var ECG_Ex = CatchException(SoapEx);
            Console.WriteLine($"ECGridOS Soap Exception: {ECG_Ex.ErrorCode} , Item: {ECG_Ex.ErrorItem}, Message: {ECG_Ex.ErrorMessage}, String: {ECG_Ex.ErrorString}");
        }
    } // END USING
}
catch (Exception ex){ Console.WriteLine("Unhandled Exception: " + ex.ToString()); }

SOAP 1.1

The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.

POST /v4.1/prod/ECGridOS.asmx HTTP/1.1
Host: os.ecgrid.io
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://os.ecgrid.io/CarbonCopyAdd"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <CarbonCopyAdd xmlns="https://os.ecgrid.io/">
      <SessionID>string</SessionID>
      <ECGridIDFrom>int</ECGridIDFrom>
      <ECGridIDTo>int</ECGridIDTo>
      <ECGridIDCCFrom>int</ECGridIDCCFrom>
      <ECGridIDCCTo>int</ECGridIDCCTo>
      <GSFrom>string</GSFrom>
      <GSTo>string</GSTo>
      <TransactionSet>string</TransactionSet>
    </CarbonCopyAdd>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <CarbonCopyAddResponse xmlns="https://os.ecgrid.io/">
      <CarbonCopyAddResult>int</CarbonCopyAddResult>
    </CarbonCopyAddResponse>
  </soap:Body>
</soap:Envelope>

SOAP 1.2

The following is a sample SOAP 1.2 request and response. The placeholders shown need to be replaced with actual values.

POST /v4.1/prod/ECGridOS.asmx HTTP/1.1
Host: os.ecgrid.io
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <CarbonCopyAdd xmlns="https://os.ecgrid.io/">
      <SessionID>string</SessionID>
      <ECGridIDFrom>int</ECGridIDFrom>
      <ECGridIDTo>int</ECGridIDTo>
      <ECGridIDCCFrom>int</ECGridIDCCFrom>
      <ECGridIDCCTo>int</ECGridIDCCTo>
      <GSFrom>string</GSFrom>
      <GSTo>string</GSTo>
      <TransactionSet>string</TransactionSet>
    </CarbonCopyAdd>
  </soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <CarbonCopyAddResponse xmlns="https://os.ecgrid.io/">
      <CarbonCopyAddResult>int</CarbonCopyAddResult>
    </CarbonCopyAddResponse>
  </soap12:Body>
</soap12:Envelope>

HTTP GET

The following is a sample HTTP GET request and response. The placeholders shown need to be replaced with actual values.

GET /v4.1/prod/ECGridOS.asmx/CarbonCopyAdd?SessionID=string&ECGridIDFrom=string&ECGridIDTo=string&ECGridIDCCFrom=string&ECGridIDCCTo=string&GSFrom=string&GSTo=string&TransactionSet=string HTTP/1.1
Host: os.ecgrid.io
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<int xmlns="https://os.ecgrid.io/">int</int>

HTTP POST

The following is a sample HTTP POST request and response. The placeholders shown need to be replaced with actual values.

POST /v4.1/prod/ECGridOS.asmx/CarbonCopyAdd HTTP/1.1
Host: os.ecgrid.io
Content-Type: application/x-www-form-urlencoded
Content-Length: length

SessionID=string&ECGridIDFrom=string&ECGridIDTo=string&ECGridIDCCFrom=string&ECGridIDCCTo=string&GSFrom=string&GSTo=string&TransactionSet=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<int xmlns="https://os.ecgrid.io/">int</int>

Back To Common API Calls

Clone this wiki locally