DocStarDownloadFile via REST SSO

When calling “api/v1/Ice.BO.AttachmentSvc/DocStarDownloadFile”, I get

  "ErrorMessage": "Unable to login using single sign-on. No SSO response."

Would appreciate anyone’s help.

Thanks

Are you passing your token?

1 Like

Excuse my ignorance, but do you mean DocStar token?
I am testing via the REST API Help tool which is already authenticated.
If you mean docstar where would one seek out that token?
If epicor token where would I seek that out?
Much appreciated @josecgomez!

Are you testing inside swagger?

yes

And inside Epicor in this instance you can access this same file?

Yes.
I should also mention that when I test the

/DocStarTestConnection

and fill out all the required feilds, I connect successfully.
Which makes me wonder if I need to be passing DocStar credentials.
Have you worked with DocStar attachments via REST before?

Yes I have and you normally don’t need any credentials
As long as your rest api is authenticated that should be all you need

I’m going to put in a support request.
Thanks for your help.
Cheers.

What file transfer setting you have in attachment maintenance UI for Docstar, client side or using service?

1 Like

Was using Client Side, switched it to Using Service and it’s working.
Very Much Appreciated @Olga!

1 Like

@brandtley - could you provide more details on how to call the Ice.BO.AttachmentSvc/DocStartDownloadFile REST API, and how to extract the returned file - preferably using C# code?

Thanks

What is your use case?

We are using DocStar with Epicor for storing attachments related to sales orders. I’d like to be able to copy those files to another platform - Salesforce.com. I know how to upload files to Salesforce - just can’t figure out how to get the file from DocStar. We’re using Epicor REST API’s for a lot of other integration stuff between Salesforce and Epicor.

THanks

Interesting. Have you done a cost study for that? I’ve heard of more people moving documents out of SF than to SF. Document storage on SF wasn’t cheap the last time I checked.

Jose showed it in WCF. REST should be similar

2 Likes

@Olga - you don’t have a REST example, do you?

@Mark_Wonsil - we’re not moving document storage to Salesforce - we’re wanting to create an integration between Epicor and Salesforce and copying the Epicor files to Salesforce (we’re already doing it the other way and that works good). And, we have plenty of available storage in Salesforce.

@daveleland, this is in Javascript, but it’s still an example.

function uploadImage() {
    let epicorUrl = '';

This would be your Epicor API URL.

   let authentication = '';

This would be your Authentication. (e.g. Username + Password)

    let url = '/api/v1/Ice.BO.AttachmentSvc/DocStarUploadFile';

    var fileName = "TestImage" + $('#fileNumber').val();
    var fileExt = ".jpg";
    var file = fileName + fileExt;
    var fileData = $('#base64').val();
    return (async () => {
        const rawResponse = await fetch(epicorUrl + url, {
          method: 'POST',
          headers: {
            "accept": "application/json",
            "Content-Type": "application/json",
            "Authorization": authuentication
          },
          body: JSON.stringify({
            fileName: file,
            data: fileData,
            docTypeID: "Image",
            parentTable: "ShipHead",
            metadata: {
              _Author: "API User",
              _TableName: "Erp.ShipHead"
            }
          })
        });
        const content = await rawResponse.json();
      
        console.log(content);
        contentObject = content;
    })();
};

Don’t know if this is helpful at all.
Is there a specific method you are trying to use?

@daveleland, do you have postman?
https://www.postman.com/

1 Like