ApiRequest classes

ApiRequest classes provide a way for the client to authenticate and send extra information and attached documents. Notice that these classes inheric from ApiRequest and have a similar structure.

ApiRequest

        public class ApiRequest
        {
            public ApiAuthentication Authentication { get; set; }
        }
        

ApiQueuedRequest

        public class ApiQueuedRequest : ApiRequest
        {
            public string PingBackUrl { get; set; }
        }
        

If PingBackUrl is present, the service will make one HTTP GET request to notify the client-side that the queued work has been processed. Firewall port openings might be required on the client-side. Unreliable if there are network issues.

See Pingback URL

ApiUpdateRequest

        public class ApiUpdateRequest : ApiRequest
        {
            public List<ApiUploadDocument> Documents { get; set; }
        }
    
        public class ApiUploadDocument
        {
            public string FileName { get; set; }
            public byte[] Bytes { get; set; }
        }
        

The term document refers to both images and documents that are linked to a product. Several products can link to the same document. During update is it possible to upload a document and make several products use the same document by using FileName as a key. In this case only one file will be stored in Prodibas.

FileName must be unique within your company's "sandbox". Prodibas will rename the files according to the internal rules.

ApiQueuedUpdateRequest

        public class ApiQueuedUpdateRequest : ApiUpdateRequest
        {
            public string PingBackUrl { get; set; }
        }
        

If PingBackUrl is present, the service will make one HTTP GET request to notify the client-side that the queued work has been processed. Firewall port openings might be required on the client-side. Unreliable if there are network issues.

See Pingback URL

PingbackUrl parameter

If PingBackUrl is present, the service will make one HTTP GET request to notify the client-side that the queued work has been processed. Firewall port openings might be required on the client-side. Unreliable if there are network issues.

Add QueueId to the pingback url

You can insert {QueueId} into the pingback url and it will be reqplaced with the QueueId of the request.

If this is sent to the service:
http://myserver.mydomain.com?MyownId=ABC123&QueueId={QueueId}

It could result in a pingback call like this:
http://myserver.mydomain.com?MyownId=ABC123&QueueId=12345