JDBC Driver for Google Ad Manager

Build 25.0.9434

Changelog

General Changes

DateBuild
Number
Change
Type
Description
10/06/20259410GeneralAdded
  • Support for parsing datetime formats using ".S" and ",S" for milliseconds and nanoseconds.
10/01/20259405JDBCAdded
  • Added the following methods to the cdata.jdbc.googleadsmanager.GoogleAdsManagerDriver class. If you pass these methods an exception with no error records, an InvalidArgumentException is thrown.
    • containsErrorSource: Returns true if the exception contains an error record for the provided source name, or false if otherwise.
    • getErrorCodeFromSource: Returns the numeric error code from the error record with the given source, or -1 if there is no error record from that source.
    • containsErrorCode: Returns true if the exception contains an error record with the provided error code, or false otherwise.
    • findErrorProperty: Returns the value of the property with the given name, or null if no property with that name is defined.
    • formatErrorRecords: Returns a string containing all the exception's error records. Includes the messages, codes, properties, and error location for each record.
09/12/20259386GeneralAdded
  • Added the IsInsertable, IsUpdateable, and IsDeleteable columns to the sys_tables table.
09/10/20259384GeneralChanged
  • All columns in statically defined Views are now reported as read-only.
09/03/20259377GeneralChanged
  • Corrected the behavior when IN criteria with NULL values are used in the projection part. It now returns NULL instead of 0. For example, "NULL IN (1,2)" returns "NULL".
09/01/20259375GeneralAdded
  • Added support for using the CAST function with infinity values. This function can cast "inf" and "-inf" to DOUBLE, FLOAT, or REAL.
08/21/20259364GeneralChanged
  • Report behavior change:
    • Fixed inconsistent string value comparisons in non-table queries.
    • For example, "SELECT 'A' = 'a'" previously returned false, but it now returns true.
08/13/20259356GeneralChanged
  • Changed the maximum number of pages held in memory from 15 to 5 for the page providers to decrease heap usage.
07/22/20259334Google Ad ManagerChanged
  • Changed the default API version from v202502 to v202505.

Added
  • Added the RepeatedCreativeServingEnabled column to the LineItems table.
  • Added the BuyerPermissionType column to the ProposalLineItems table.
06/25/20259307GeneralRemoved
  • Removed the "ADLS Gen 1" value from the ConnectionType property.
06/20/20259302GeneralAdded
  • Created the following functions:
    • TEXT_ENCODE: encodes a string into a different charset (UTF8 → UTF7 and returns a binary array as the result).
    • TEXT_DECODE: takes a binary array and decodes it back into a string when provided the charset.
    • BASE64_ENCODE: takes a binary array and encodes it as a base64 string (varchar).
    • BASE64_DECODE: takes a base 64-encoded string and decodes it into a binary array.
06/18/20259300GeneralChanged
  • The internal code for exception handling has been refactored. Exception messages returned during certain error conditions may now have different wording or formatting.
06/09/20259291Google Ad ManagerRemoved
  • Removed the NOT_SERVING option from the Status column in the LineItemCreativeAssociations table. This value is no longer supported by the Google Ads Manager API.
05/29/20259280Google Ad ManagerRemoved
  • Removed from the Users table: the "IsEmailNotificationAllowed" column.
05/27/20259278GeneralRemoved
  • Removed the "Proprietary" enum option from ProxyAuthscheme.
04/01/20259222Google Ad ManagerChanged
  • Changed the default API version from v202408 to v202502.
02/15/20259177GeneralAdded
  • Added support for converting unsigned integer types to the nearest signed data type that has enough precision to hold the unsigned value.This is done for JDBC only because it does not have support for unsigned data types.
11/27/20249097GeneralAdded
  • Added ThreadId to LogModule output. Logfile lines now include the Thread ID associated with the action being performed.
11/18/20249088Google Ad ManagerAdded
  • Added the AdBadgingEnabled column to the Creatives table.

Changed
  • Changed the default API version from v202202 to v202408.
10/17/20249056Google Ad ManagerAdded
  • Added support for Workload Identity Federation using AWS accounts.
09/09/20249018Google Ad ManagerChanged
  • Updated the default value of the Version connection property to "v202405".
05/09/20248895GeneralChanged
  • The ROUND function previously did not accept negative precision values. That feature has now been restored.
03/15/20248840GeneralAdded
  • Created a new SQL function called STRING_COMPARE that provides java's String.compare() ability to SQL queries. Returns a number representative of the compared value of two strings
11/29/20238733GeneralChanged
  • The ROUND function doesn't accept the negative precision values anymore.

Changed
  • The returning types of the FDMonth, FDQuarter, FDWeek, LDMonth, LDQuarter, LDWeek functions are changed from Timestamp to Date.
  • The return type of the ABS function will be consistent with the parameter value type.
11/28/20238732GeneralAdded
  • Added the HMACSHA256 formatter to allow for secrets to be decoded if it is in base64 format
10/27/20238700JDBCChanged
  • Added support for Connection.abort() method.
10/17/20238690Google Ad ManagerAdded
  • Added support for TimeZoneType in reports.
  • Added TimeZoneType as an input for CreateReportSchema. The eligible values are PUBLISHER and PACIFIC.
  • Added support for ReportCurrency in reports.
  • Added ReportCurrency as an input for CreateReportSchema. This is the currency for revenue metrics. Defaults to the network currency if left null.
  • Added AdExchangeLineItemLevelImpressions, AdExchangeLineItemLevelClicks, TotalLineItemLevelImpressions, TotalLineItemLevelCPMAndCPCRevenue to the example InventoryReport.

Changed
  • Changed the default Google Ads Manager version to v202308.

Removed
  • Removed DynamicAllocationInventoryLevelImpressions, DynamicAllocationInventoryLevelClicks, TotalInventoryLevelImpressions, TotalInventoryLevelCpmAndCpcRevenue from the example InventoryReport.
07/29/20238610Google Ad ManagerAdded
  • Added support for AdUnitView by requesting AdUnitView FLAT if table structure is set to either Flat or Hierarchical and Ad unit (all levels) is included in the report in the user interface.
  • Added AdUnitView as an input for CreateReportSchema. The eligible values are TOP_LEVEL and FLAT.
06/20/20238571GeneralAdded
  • Added the new sys_lastresultinfo system table.
04/25/20238515GeneralRemoved
  • Removed support for the SELECT INTO CSV statement. The core code doesn't support it anymore.
04/20/20238510Google Ad ManagerAdded
  • Replaced CompanyId column name with AdvertiserId for Creatives table.
01/25/20238425Google Ad ManagerAdded
  • Added support for PKCE using the OAuthPKCE auth scheme
12/14/20228383GeneralChanged
  • Added the Default column to the sys_procedureparameters table.
11/15/20228354Google Ad ManagerAdded
  • Added the following columns to the Creatives table, IsAspectRatio, PolicyLabels, AppliedLabels, ThirdPartyDataDeclaration, CreativeTemplateVariableValues, SslManualOverride, AssetSize, InternalRedirectUrl, Html5Asset, DestinationUrlType, HtmlSnippet, CustomCreativeAssets, IsInterstitial, AltText, ThirdPartyImpressionTrackingUrls, AmpRedirectUrl.
  • Added the following columns to the LineItems table, DeliveryForecastSource, CustomPacingCurve, SkippableAdType, FrequencyCaps, ValueCostPerUnit, ActivityAssociations, AllowedFormats, Stats, DeliveryIndicator, Budget, WebPropertyCode, AppliedLabels, EffectiveAppliedLabels, ProgrammaticCreativeSource, ThirdPartyMeasurementSettings, YoutubeKidsRestricted, SecondaryGoals, GrpSettings, DealInfo, ViewabilityProviderCompanyIds, ChildContentEligibility, CustomVastExtension, CreativeTargetings..
  • Added the following columns to the Orders table, AgencyContactIds, SalespersonId, AppliedLabels, EffectiveAppliedLabels.
  • Added the following columns to the Companies table, Address, Email, FaxPhone, PrimaryPhone, ExternalId, Comment, Settings, AppliedLabels, PrimaryContactId, ThirdPartyCompanyId, ChildPublisher, ViewabilityProvider.
  • Added the following column to the CustomTargetingKeys table, ReportableType.
  • Added the following columns to the Inventories table, ParentPath, AdUnitSizes, AdSenseSettings, AdSenseSettingsSource, AppliedLabelFrequencyCaps, EffectiveLabelFrequencyCaps, AppliedLabels, EffectiveAppliedLabels, EffectiveTeamIds, AppliedTeamIds, RefreshRate, ExternalSetTopBoxChannelId.
  • Added the following column to the Labels table, AdCategory.
  • Added the following columns to the MobileApplications table, ApplicationId, ApplicationCode.
  • Added the following columns to ProposalLineItems, Goal, SecondaryGoals, FrequencyCaps, CreativePlaceholders, Targeting, AppliedLabels, EffectiveAppliedLabels, NetRate, NetCost, DeliveryIndicator, DeliveryData, GrpSettings, ThirdPartyMeasurementSettings, MakegoodInfo, PauseRole, PauseReason.
  • Added the following columns to Proposals, Advertiser, Agencies, PrimarySalesperson, AppliedLabels, EffectiveAppliedLabels, MarketplaceInfo, BuyerRfp.
  • Added the following columns to the Users table, ExternalId, OrdersUiLocalTimeZoneId.
  • Added the following value to LineItems.LineItemType, PREFERRED_DEAL.
  • Added the following values to Companies.Type, PARTNER, CHILD_PUBLISHER, VIEWABILITY_PROVIDER.
  • Added the following value to Labels.Types, CANONICAL_CATEGORY.

Changed
  • Changed the default Google Ads Manager version to v202211.
  • Changed LineItems.ContractedUnitsBought data type from integer to long.
  • Changed LineItems.VideoMaxDuration data type from integer to long
  • Changed Orders.ExternalOrderId data type from long to integer.
  • Changed Orders.SecondaryTraffickerIds data type from long to string.
  • Changed Orders.SecondarySalespersonIds data type from long to string.
  • Changed Orders.TotalBudget data type from long to string.
  • Changed Inventories.Id data type from long to string.
  • Changed Inventories.ParentId data type from long to string.

Removed
  • Removed the following columns from the LineItems table, creativePersistenceType, IsPrioritizedPreferredDealsEnabled, AdExchangeAuctionOpeningPriority.
  • Removed the following column from the Placements table, IsAdSenseTargetingEnabled.
  • Removed the following value from Companies.Type: AFFILIATE_DISTRIBUTION_PARTNER, CONTENT_PARTNER.

Replacement
  • Replaced MobileApplications.AppStore with MobileApplications.AppStores.
10/28/20228336Google Ad ManagerAdded
  • Added CustomTargetingAggregate as a column in the LineItems table.
  • Added CustomTargetingValues as a table to create, update and query Custom Targeting Values.
10/18/20228326Google Ad ManagerAdded
  • Added BaseReportName as inputs for CreateReportSchema. When BaseReportName is specified, CreateReportSchema will utilize this report as the template for the new report, adding any inputted columns on top of any already present ones.
09/30/20228308GeneralChanged
  • Added the IsPath column to the sys_procedureparameters table.
09/29/20228307Google Ad ManagerAdded
  • Added CustomFieldIdsPrimitive, CustomFieldIdsDropdown and CustomDimensionKeyIds as inputs for CreateReportSchema.
  • Added support for generating reports that include customFieldIds and customDimensionKeyIds.
08/30/20228277Google Ad ManagerAdded
  • Added the columns PoNumber, SecondaryTraffickerIds, SecondarySalespersonIds, AppliedTeamIds to the Orders table.
06/11/20228197JDBCChanged
  • The method GetJDBCMinorVersion() and GetJDBCMajorVersion() return 4.2 as the supported JDBC major / minor version.
05/24/20228179Google Ad ManagerChanged
  • Changed provider name to Google Ad Manager.
04/28/20228153JDBCChanged
  • Removed support for JRE 1.6. JRE 1.8 and above is now required.
04/12/20228137Google Ad ManagerChanged
  • Changed the default API version from v202108 to v202202.

Added
  • Added the column ApplicationId to the Inventories table.

Removed
  • Removed the column MobilePlatform, IsSharedByDistributor from the Inventories table.
  • Removed the column PauseRole, PauseRole from the ProposalLineItems table.
  • Removed the column ExchangeRate, RefreshExchangeRate from the Proposals table.
03/18/20228112Google Ad ManagerAdded
  • Added the columns StartTimeZoneId and EndTimeZoneId from the LineItems table.

Removed
  • Removed the column TimeZoneId from the LineItems table.
03/08/20228102Google Ad ManagerAdded
  • Added support for querying the table LineItemCreativeAssociations.
02/25/20228091JDBCChanged
  • The method DatabaseMetaData.getTypeInfo() now returns all of the data types that the driver supports. Previously, it was returning only a portion of the data types. The types include: tinyint, smallint, int, bigint, float, double, numeric, decimal, bit, date, datetime, time, varchar, binary, uuid.
02/24/20228090JDBCChanged
  • Corrected the return value of method DatabaseMetaData.supportsOuterJoins(), which used to return an incorrect value.
12/07/20218011Google Ad ManagerAdded
  • Exposed dimension attribute columns.
12/01/20218005Google Ad ManagerAdded
  • Added extra columns for Dimension, Hierarchy and OLAPType to sys_tablecolumns for OLAP properties. This impacts the following views: DeliveryReport, InventoryReport, SalesReport.
  • The stored procedure CreateReportSchema now adds a property to tell if a column is a DimensionAttribute or a Measure.
10/27/20217970JDBCChanged
  • Added support for JDK 17
09/12/20217925JDBCRemoved
  • Removed the IS_READONLY, IS_KEY, NUMERIC_PRECISION, and DECIMAL_DIGITS columns from DatabaseMetadata.GetColumns(), as they are not part of the JDBC Specification. This information is still available via other metadata calls.
09/02/20217915GeneralAdded
  • Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
08/07/20217889GeneralChanged
  • Added the KeySeq column to the sys_foreignkeys table.
08/06/20217888GeneralChanged
  • Added the new sys_primarykeys system table.
07/23/20217874GeneralChanged
  • Updated the Literal Function Names for relative date/datetime functions. Previously, relative date/datetime functions resolved to a different value when used in the projection as opposed to the predicate. For example: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly, the two LAST_MONTH() methods would resolve to different datetimes. Now, they will match.
  • As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. For example: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that were previously calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
06/18/20217839Google Ad ManagerAdded
  • Added support for the GOOGLEJSONBLOB JWT certificate type. This works like the existing GOOGLEJSON certificate type except that the certificate is provided as JSON text instead of as a file path.
06/03/20217824Google Ad ManagerChanged
  • Changed the default Version from v202011 to v202105.
  • Changed enum columns in ProposalLineItems and LineItems to include new possible values
  • Changed Proposals to include a new column
04/25/20217785GeneralAdded
  • Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = CONCAT(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
04/23/20217783GeneralChanged
  • Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
04/16/20217776GeneralAdded
  • Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
04/16/20217776GeneralChanged
  • Reduced the length to 255 for varchar primary key and foreign key columns.

Changed
  • Updated index naming convention to avoid duplicates.
04/16/20217776GeneralChanged
  • Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you need to generate new metadata caches if you are currently using CacheMetadata.
03/23/20217752Google Ad ManagerRemoved
  • Removed the UserDefinedRange connection property as it should always be true.
01/22/20217692Google Ad ManagerChanged
  • Changed the default API version from v202002 to v202011.

Added
  • Added new possible values for the MobileApplications.AppStore column: ROKU,AMAZON_FIRETV,PLAYSTATION,XBOX,SAMSUNG_TV.
  • Added new column CompetitiveConstraintScope for the LineItems table.

Removed
  • Removed the deprecated column IsSetTopBoxEnabled from the LineItems table.
11/19/20207628Google Ad ManagerAdded
  • Changed the default report date range if UserDefinedRange property is true: If no StartDate, EndDate or DateRangeType is specified, the report will be generated for the date range the user has configured in the GUI, instead of the last month.
  • Added the DateRangeType Pseudo-Column for report views. It can be used along with StartDate and EndDate pseudocolumns to specify the period of time for which the reporting data is being generated.

Copyright (c) 2025 CData Software, Inc. - All rights reserved.
Build 25.0.9434