findOutboundFaxesAdvanced API issues

Hi all,

I have been getting many 500s (which return as 400 in the status code field of the response) with the following error: The search failed to complete within the time allowed. Please simplify your search criteria/options or retry later

From investigating it looks like the issue is with the performance of the BroadcastId property when searching by query as.

The following query with only maxCount = 1 for one BrodcastId sometimes returns 200 sometimes returns the bad request error. Would it be possible to get more insight into this?

I've already created a case for this issue which is pretty high priority and they told me to post the question here. Here is the query:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.xm.faxserver.com/">    <soapenv:Header/>    <soapenv:Body>        <ws:findOutboundFaxesAdvanced>            <userId>{{app_user_id}}</userId>            <startIndex>1</startIndex>            <maxCount>1</maxCount>            <keywordInfo>                <query>11111111-1111-1111-1111-111111111111-11111111-BR OR 11111111-1111-1111-1111-111111111111-11111111-BR</query>                <property>BroadcastId</property>            </keywordInfo>        </ws:findOutboundFaxesAdvanced>    </soapenv:Body></soapenv:Envelope>

The {{app_user_id}} is mentioned in the Case number CS0320923. Note that the query IDs are fake IDs for this post.

Comments

  • LaurenceLabonté
    LaurenceLabonté E Community Moderator

    How many broadcast id are use in the real request? How many OR? If there is more then a few, I would suggest to reduce that number. You could also make one request per broadcastid instead, as to not get the performance error message.

  • The request succeeds always when there is 1 broadcast ID, fails sometimes when there are 2 and always fails when there are 3 OR. That is what I tested using my account ID and the POSTMAN requests gave by your documentation. If I wanted to look at 50 broadcast Ids, would I need to make 50 requests at once? What is the rate limit to get the fax status?

  • LaurenceLabonté
    LaurenceLabonté E Community Moderator

    In your case (searching on the broadcastId property), I would suggest to use the exact match search, instead of keyword search:

    <searchInfo>
    <broadcastId>11111111-1111-1111-1111-111111111111-11111111-BR</broadcastId>
    </searchInfo>

    You will have to make a request per broadcastId, but it will be a lot faster then the keyword search, and even in an enterprise with a lot of fax, you should never get a timeout.

    There are no rate limits in place currently. This said, best practice suggest to make each call consecutively (as oppose to 50 concurrent call).