Exigo Web Services API v2022.12.19.1

CreateCustomerFile

Creates a file for the customer in their default directory

Input Properties

CreateCustomerFileRequest
PropertyData TypeNotes
CustomerIDInt32Unique numeric identifier for customer record.
FileNameStringName of destination file in customer's folder (do not include path).
FileDataByte[]An array of bytes than comprise the file contents.
OverwriteExistingFileBooleanOptional. . Defaults to False.
CustomerKeyStringOptional. Unique alpha numeric identifier for customer record. Exception will occur if CustomerID & CustomerKey are provided.
FolderNameStringOptional. Name of subfolder (do not include path). If not already existing in the parent folder, subfolder will be created.
ParentFolderIDInt32Optional. Unique numeric identifier for the parent destination folder. Must be set with existing folder's ID if set. Defaults to customer's root.

Output Properties

CreateCustomerFileResponse
PropertyData TypeNotes
FolderIDInt32Unique identifier for the location of the new file.
FileIDInt32Unique identifier for the new file.

Http Request

POST https://yourcompany-api.exigo.com/3.0/file HTTP/1.1
Content-Type: application/json
Authorization: Basic base64Encoded(yourlogin@yourcompany:yourpassword)

{ "customerID": 1, "fileName": "1", "fileData": null, "overwriteExistingFile": true, "customerKey": "1", "folderName": "1", "parentFolderID": 1 }

Http Response

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Content-Length: length

{ "folderID": 1, "fileID": 1, "result": null }

Soap Request

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

POST /3.0/ExigoApi.asmx HTTP/1.1
Host: api.exigo.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "https://api.exigo.com/CreateCustomerFile"

<?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:Header> <ApiAuthentication xmlns="http://api.exigo.com/"> <LoginName>string</LoginName> <Password>string</Password> <Company>string</Company> <Identity>string</Identity> <RequestTimeUtc>dateTime</RequestTimeUtc> <Signature>string</Signature> </ApiAuthentication> </soap:Header> <soap:Body> <CreateCustomerFileRequest xmlns="http://api.exigo.com/"> <CustomerID>int</CustomerID> <FileName>string</FileName> <FileData>base64Binary</FileData> <OverwriteExistingFile>boolean</OverwriteExistingFile> <CustomerKey>string</CustomerKey> <FolderName>string</FolderName> <ParentFolderID>int</ParentFolderID> </CreateCustomerFileRequest> </soap:Body> </soap:Envelope>

Soap Response

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> <CreateCustomerFileResult xmlns="http://api.exigo.com/"> <FolderID>int</FolderID> <FileID>int</FileID> </CreateCustomerFileResult> </soap:Body> </soap:Envelope>

C# Rest Client

Install Nuget package Exigo.Api.Client

try

{

    //Create Api Client

    var api = new ExigoApiClient("yourcmpany", "yourlogin", "yourpassword");

 

    //Create Request

    var req = new CreateCustomerFileRequest();

 

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.FileName = "1";             //Name of destination file in customer's folder (do not include path).

 

    //Add FileData

    var filedata = new List<Byte>();

    filedata.Add(1);

    filedata.Add(2);

 

    //Now attach the list to the request

    req.FileData = filedata.ToArray();

    req.OverwriteExistingFile = true;

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exception will occur if CustomerID & CustomerKey are provided.

    req.FolderName = "1";           //Name of subfolder (do not include path). If not already existing in the parent folder, subfolder will be created.

    req.ParentFolderID = 1;         //Unique numeric identifier for the parent destination folder. Must be set with existing folder's ID if set. Defaults to customer's root.

 

    //Send Request to Server and Get Response

    var res = await api.CreateCustomerFileAsync(req);

 

    //Now examine the results:

    Console.WriteLine("FolderID: {0}", res.FolderID);

    Console.WriteLine("FileID: {0}", res.FileID);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

C# Soap Client

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.LoginName = "yourLoginName";

    auth.Password = "yourPassword";

    auth.Company = "yourCompany";

    api.ApiAuthenticationValue = auth;

 

    //Create Request

    CreateCustomerFileRequest req = new CreateCustomerFileRequest();

 

    req.CustomerID = 1;             //Unique numeric identifier for customer record.

    req.FileName = "1";             //Name of destination file in customer's folder (do not include path).

 

    //Add FileData

    List<Byte> filedata = new List<Byte>();

    filedata.Add(1);

    filedata.Add(2);

 

    //Now attach the list to the request

    req.FileData = filedata.ToArray();

    req.OverwriteExistingFile = true;

    req.CustomerKey = "1";          //Unique alpha numeric identifier for customer record. Exception will occur if CustomerID & CustomerKey are provided.

    req.FolderName = "1";           //Name of subfolder (do not include path). If not already existing in the parent folder, subfolder will be created.

    req.ParentFolderID = 1;         //Unique numeric identifier for the parent destination folder. Must be set with existing folder's ID if set. Defaults to customer's root.

 

    //Send Request to Server and Get Response

    CreateCustomerFileResponse res = api.CreateCustomerFile(req);

 

    //Now examine the results:

    Console.WriteLine("FolderID: {0}", res.FolderID);

    Console.WriteLine("FileID: {0}", res.FileID);

}

catch (Exception ex)

{

    Console.WriteLine("Error: " + ex.Message);

}

VB.Net

Try

    'Create Main API Context Object

    Dim api as new ExigoApi()

 

    'Create Authentication Header

    Dim auth as new ApiAuthentication()

    auth.LoginName = "yourLoginName"

    auth.Password = "yourPassword"

    auth.Company = "yourCompany"

    api.ApiAuthenticationValue = auth

 

    'Create Request

    Dim req as new CreateCustomerFileRequest()

 

    req.CustomerID = 1

    req.FileName = "1"

 

    'Add FileData

    Dim filedata As New List(Of Byte)()

    filedata.Add(1)

    filedata.Add(2)

 

    'Now attach the list to the request

    req.FileData = filedata.ToArray()

    req.OverwriteExistingFile = true

    req.CustomerKey = "1"

    req.FolderName = "1"

    req.ParentFolderID = 1

 

    'Send Request to Server and Get Response

    Dim res As CreateCustomerFileResponse = api.CreateCustomerFile(req)

 

    'Now examine the results:

    Console.WriteLine("FolderID: {0}", res.FolderID)

    Console.WriteLine("FileID: {0}", res.FileID)

Catch ex As Exception

    Console.WriteLine("Error: " & ex.Message)

End Try

PHP

Note: PHP is not officially supported.

<?php

try

{

    //Setup the SoapClient and Authentication

    $api = new SoapClient("http://api.exigo.com/3.0/ExigoApi.asmx?WSDL");

    $ns = "http://api.exigo.com/";

    $auth = array()

    $auth["LoginName"] = new SoapVar("yourLoginName",XSD_STRING,null,null,null,$ns);

    $auth["Password"] = new SoapVar("yourPassword",XSD_STRING,null,null,null,$ns);

    $auth["Company"] = new SoapVar("yourCompany",XSD_STRING,null,null,null,$ns);

    $headerBody = new SoapVar($auth, SOAP_ENC_OBJECT);

    $header = new SoapHeader($ns, 'ApiAuthentication', $headerBody);

    $api->__setSoapHeaders(array($header));

 

    //Create Request

 

    $req->CustomerID = 1;

    $req->FileName = "1";

 

    //Add FileData

 

 

 

    //Now attach the list to the request

    req.FileData = array(fileDat1,fileDat2);

    $req->OverwriteExistingFile = 1;

    $req->CustomerKey = "1";

    $req->FolderName = "1";

    $req->ParentFolderID = 1;

 

    //Send Request to Server and Get Response

    $res = $api.CreateCustomerFile($req);

 

    //Now examine the results:

}

catch (SoapFault $ex)

{

    echo "Error: ", $ex->getMessage();

}

?>

Java

Note: Java is not officially supported.

try

{

    //Create Main API Context Object

    ExigoApi api = new ExigoApi();

 

    //Create Authentication Header

    ApiAuthentication auth = new ApiAuthentication();

    auth.setLoginName("yourLoginName");

    auth.setPassword("yourPassword");

    auth.setCompany("yourCompany");

    api.setApiAuthenticationValue(auth);

 

    //Create Request

    CreateCustomerFileRequest req = new CreateCustomerFileRequest();

 

    req.setCustomerID(1);

    req.setFileName("1");

 

    //Add FileData

    ArrayOfSystem.Byte filedata = new ArrayOfSystem.Byte();

 

    Byte fileDat1 = new Byte();

    filedata.Add(fileDat1);

 

    Byte fileDat2 = new Byte();

    filedata.Add(fileDat2);

 

    //Now attach the list to the request

    req.setFileData(filedata);

    req.setOverwriteExistingFile(1);

    req.setCustomerKey("1");

    req.setFolderName("1");

    req.setParentFolderID(1);

 

    //Send Request to Server and Get Response

    CreateCustomerFileResponse res = api.getExigoApiSoap().createCustomerFile(req, auth);

 

    //Now examine the results:

}

catch (Exception ex)

{

    System.out.println("Error: " + ex.getMessage());

}

CSV

This method does not support csv output.