Software Development Kit (SDK) and API Discussions

NetApp Manageability (NM) SDK 5.4 - Introduction and Download Information

Vineet
26,041 Views

The NetApp Manageability SDK provides resources to develop applications that monitor and manage NetApp storage systems. SDK Help provides information about core APIs, which provide infrastructure to invoke Data ONTAP® APIs, OnCommand Unified Manager [DataFabric Manager] APIs .

 

The NetApp Manageability SDK 5.4 supports API Bindings for both Data ONTAP® APIs and OnCommand® Unified Manager APIs. The API Bindings libraries contain interfaces to establish a connection with either the Data ONTAP server or the Unified Manager [DataFabric Manager] server. By using these libraries, you can create applications to access and manage clustered Data ONTAP or OnCommand Unified Manager.

 

NetApp Manageability SDK 5.4 API Bindings includes the following new feature:

  • API Bindings for Data ONTAP 8.2.3 and 8.3.1

 

NetApp Manageability SDK 5.4 API Bindings are available free of cost to customers and partners. You must accept the End User License Agreement at the time of downloading the NetApp Manageability SDK 5.4 API Bindings.

 

Download Information:

 

NMSDK is available free-of-charge through the NetApp Support site. To access NMSDK, partners and customers need to sign-up for it.

 

Create a NetApp Support Site login, if you do not have one.
http://mysupport.netapp.com

 

Download NMSDK package. You can find the zip file at the following location on the NetApp Support Site:
http://mysupport.netapp.com/NOW/cgi-bin/software

 

Documentation is available at the following location on the NetApp Support Site:
https://mysupport.netapp.com/documentation/productsatoz/index.html

 

6 REPLIES 6

ekashpureff
25,235 Views

 

Vineet -

 

Awesome !

 

There are many of us who have been waiting for this update to the SDK.

 

Thank you !


I hope this response has been helpful to you.

At your service,

Eugene E. Kashpureff, Sr.
Independent NetApp Consultant http://www.linkedin.com/in/eugenekashpureff
Senior NetApp Instructor, IT Learning Solutions http://sg.itls.asia/netapp
(P.S. I appreciate 'kudos' on any helpful posts.)

 

 

wh_slayer
25,098 Views

Where does one file bugs for the NMSDK?  I've found that the "ipmi-version" field is not defined in the "service-processor-info" data type for the Clustered Data ONTAP Perl API bindings.

 

"No definition for typedef ipmi-version found at <path>/OntapClusterAPI.pm line 79389."

bobshouseofcards
24,812 Views

Since the Perl bindings to the XML API is mapped in the OntapClusterAPI.pm library file, this is one correction you can make yourself.  

 

In OntapClusterAPI.pm, each entity - APIs, Types, etc. - is described as a hash.  The "service-processor-info" type is defined on line 67693 of the SDK 5.4 version.  In the "fields" key, I added an appropriate entry to define "ipmi-version" as follows:

 

'service-processor-info' => {

   'category' => 'service-processor',
   'fields' => {
      'device-revision' => {
         'type' => 'string',
         'flags' => 4,
         'scope' => [],
      },
      'firmware-version' => {
         'type' => 'string',
         'flags' => 4,
         'scope' => [],
      },

## more fields here - skipped for brevity 

   },

},

 

Add an entry in the 'fields' key as:

 

      'ipmi-version' => {
         'type' => 'string',
         'flags' => 4,
         'scope' => [],
      },

 

And now the API call will work because the Perl binding will understand everything coming back from the ZAPI call...

 

C:\work\test>ipmi.pl
$VAR1 = {
      'attributes' => {
            'service-processor-info' => {
                  'firmware-version' => '1.4.1P3',
                  'type' => 'sp',
                  'ip-address' => {
                        'ip-address' => [
                                    'XXX.XXX.XXX.XXX'
                         ]
                  },
                  'part-num' => 'Not Applicable',
                  'device-revision' => 'Not Applicable',
                  'is-ip-configured' => 'true',
                  'is-autoupdate-enabled' => 'true',
                  'ipmi-version' => '2.0',
                  'status' => 'online',
                  'node' => 'xxxxxxxxx',
                  'mac-address' => '00:11:22:33:44:55',
                  'serial-num' => 'Not Applicable'
               }
        }
};

 

Yes, you may notice, I eschew the PowerShell toolkit in favor of Perl even though I typically use a Windows scripting box.  The Perl API bindings are way more expressive and convenient than is the PowerShell toolkit, espeically when accessing Advanced or Diagnositic level ZAPIs.

 

Hope this helps you!

 

Bob

 

Ben_Hall
24,951 Views

Hi,

 

The perl sample code files are mostly copyrighted 2005.  For the samples I'm interested in the code makes use of API calls that no longer exist.

 

Is there a plan to update the sample code included in the SDK?  Is updated sample code posted somewhere else?

 

Thanks,

ben

Brennus
24,152 Views

Are there API coduments yet which can be imported into ZEDI?

Would be great to have API 1.31 in ZEDI! Way easier then going through the documentation and some trial and error on how to format the different requests per api.

 

regards,

 

Brenn

murthya
10,011 Views

Hi Vineet,

How is the support provided for this product?

Regds,

Murthy
+61447044787


Public