Home > database >  How to react to message from Microsoft regarding updating API's
How to react to message from Microsoft regarding updating API's

Time:11-03

I got a message from Microsoft in the last few days

Azure SQL Database 2014-04-01 APIs will be retired on 31 October 2025.

You're receiving this email because you use Azure SQL Database APIs.

To improve performance and security, we're updating Azure SQL Database APIs. As part of this, all version 2014-04-01 APIs will be retired on 31 October 2025. You'll need to update your resources, including templates, tools, scripts, and programs, to use a newer API version by then. Any API calls still using the older versions after that date will stop working until you've updated them.

I access my Azure SQL Databases in the following manner.

  1. From the WebApp via a Java connection and an ODBC driver

    public final class DBConnection {
    private static DataSource ds = null;
    private static DBConnection instance = null;
    
    private DBConnection() throws NamingException {
       InitialContext ic = new InitialContext();
       ds = (DataSource) ic.lookup(Monitor.getDsName());
    }
    
    <dependency>
         <groupId>com.microsoft.sqlserver</groupId>
         <artifactId>mssql-jdbc</artifactId>
         <version>10.2.1.jre11</version>
     </dependency>
    
  2. via sqlcmd

  3. via node.js

     const configDB = {
    
     user: "",
     password: "",
     server: "myserver.database.windows.net",
     database: "mydb",
     connectionTimeout: 3000,
     parseJSON: true,
     options: {
         encrypt: true,
         enableArithAbort: true
     },
     pool: {
         min: 0,
         idleTimeoutMillis: 3000
     }
     };
     const poolDB = new sql.ConnectionPool(configDB);
     aLine='EXEC ...'
     await poolFOI.connect();
     let resultDB = await poolDB.request().query(aLine);
    
  4. Via Azure Logic Apps (using an API Connections)

  5. Via Azure Function Apps (connecting similar to the WebApp Above)

  6. Via SSMS

Which of these are possibly triggering the message about Azure SQL Database APIs? Also I started using Azure after 2020, so it does not make sense to me that I would be using APIs from 2014

CodePudding user response:

I started using Azure after 2020, so it does not make sense to me that I would be using APIs from 2014

2014-04-01 refers to a specific version of the Azure SQL Database APIs. Azure API HTTP requests specify their version explicitly, usually via a header or query parameter. It looks like Azure SQL Database specifies the API version in an api-version query parameter. API versions are not updated very often, so it's normal to use a version that's years old. E.g., the next stable version after 2014-04-01 is 2021-11-01.

Whatever libraries you're using are probably tied to a specific version, and you can probably just upgrade those libraries to use a later API version. If you're not sure which library is using the old version, you can try using an HTTP proxy to sniff the traffic and inspect the api-version query parameter.

CodePudding user response:

The API mentioned in the email (I also got the same) is for managing the SQL Database Servers and the Database itself (in other words they are the control plane API) and not the data inside them. You would use the SQL REST API to perform management operations on the SQL Database resources.

They will have no impact on how you connect to the database and manage the data inside those databases which is what your code is currently doing.

So unless you are using the version 2014-04-01 of the REST API to manage the SQL Database Servers and SQL Databases (and not the data inside them), you can safely ignore the email.

You can learn more about the SQL Database REST APIs here: https://learn.microsoft.com/en-us/rest/api/sql/.

  • Related