Forum Discussion

bjadav's avatar
bjadav
New Contributor II
5 years ago

Using NetSuite Snap to fetch all the records from NetSuite

I am trying to get all the records for given object for e.g. vendors from NetSuite and store that information in MySQL DB. I tried to use NetSuite Get Snap but it requires use to pass the internal id and type of the object which we are trying to get and store in the MySQL DB in the first place.
How can get all the records of different objects from NetSuite? in NetSuite update, we have dropdown for Object from where we can select different type of objects. Why don’t we have same dropdown in NetSuite Get Snap to get all the records for that objects?

7 Replies

  • Let me try to better understand what you’re doing. Are you using a NetSuite Search to get a list of every Vendor, and then trying to use a NetSuite Get to get the detail for each of those Vendors because the Search response does not contain enough details?

    If so, have you tried unchecking “Body Fields Only” on the Search settings? That might give you all the details you need in the Search response.

    If that still doesn’t give you all the details you’re looking for and you need to call Get, you need to give it input that looks like this:

    As for why the NetSuite Get snap doesn’t have a dropdown to select the Object type like most of the other NetSuite snaps, I can’t answer that. It’s been that way for many years, and I would agree that it doesn’t really make sense. Unfortunately we can’t change the design now without breaking backward compatibility. But we could add an improved version of the snap that is more consistent with the other NetSuite snaps.

    Hope that helps.

    • bjadav's avatar
      bjadav
      New Contributor II

      Thanks for reply ptaylor!

      I want to get list every vendor, accounts and other Netsuite objects with all possible fields described in object schema. If you are suggesting to use Netsuite search snap then use Get snap to get all the details, then how can I use the Search Snap to return all the records in given object?

      With Netsuite Rest API, we can do something like <netsuite_url>/accounts to get all the accounts records by passing an offset value in the URL. I want to do same thing with available Netsuite Snaps.

      • ptaylor's avatar
        ptaylor
        Employee

        No, I am suggesting that you first try using just the Search snap without using the Get snap at all. The Search snap has a checkbox setting called “Body Fields Only” that is checked by default. This will omit some details from the response such as certain computed fields and details of child objects. You can uncheck this box to tell the Search to return more details.

        Here’s an example of one Vendor from a Search result, with Body Field Only unchecked (left side) and checked (right side). As you can see, the left side includes the balance, the addresses, and the currency details.

        To configure a Search to return all of the objects of the given type, you need to give it empty search criteria. The way I do that is with a Mapper to provide the input like this:

        So please try that first.

        But I have a question. You said:

        With Netsuite Rest API, we can do something like <netsuite_url>/accounts to get all the accounts records by passing an offset value in the URL. I want to do same thing with available Netsuite Snaps.

        When you say the NetSuite REST API, are you talking about the RESTlet framework? Do you have RESTlets that return the data you want? If so, you should be aware that we have a new NetSuite snap, NetSuite Call RESTlet, that can be used to call RESTlets. It’s not officially released yet, but we’ve given a preview release to a couple of customers.

  • bjadav's avatar
    bjadav
    New Contributor II

    @ptaylor I have successfully setup the OAuth2 SSL account for NetSuite in SnapLogic as mentioned in this document and by following this video. And I am able to use SuiteQL which allows us to write SQL query to fetch the required data using this OAuth2 account and SuiteQL.



    However, I am not able to Auto refresh the token using OAuth2 SSL Account. When I click on refresh button on OAuth2 Account setup page, it says Error: access token refresh failed. without any descriptive message for the error. Can you please tell me how can I identify what is the error and make sure that token auto refreshes without any issues.

    • ptaylor's avatar
      ptaylor
      Employee

      Unfortunately I don’t know anything about using OAuth2 with NetSuite. Please create a support ticket about this if you haven’t yet, and if it’s still a problem.