{"id":41667,"library":"oci-waas","title":"OCI WAAS Node.js SDK","description":"Oracle Cloud Infrastructure (OCI) WAAS (Web Application Acceleration and Security) SDK for Node.js (version 2.132.0). This package is part of the official OCI TypeScript SDK, released approximately every 2 weeks. It provides programmatic access to manage OCI WAAS resources such as Web Application Firewall (WAF), edge policies, and certificate management. Compared to using the OCI CLI or REST API directly, this SDK offers type safety (TypeScript declarations included), automatic request signing, and retry handling. The latest version supports all WAAS API operations as of 2025. It is designed for Node.js environments and uses native ESM modules.","status":"active","version":"2.132.0","language":"javascript","source_language":"en","source_url":"https://github.com/oracle/oci-typescript-sdk","tags":["javascript","typescript"],"install":[{"cmd":"npm install oci-waas","lang":"bash","label":"npm"},{"cmd":"yarn add oci-waas","lang":"bash","label":"yarn"},{"cmd":"pnpm add oci-waas","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core SDK module providing authentication, HTTP handling, and common utilities","package":"oci-common","optional":false}],"imports":[{"note":"ESM-only; CJS require is not supported. Use import statement.","wrong":"const WaasClient = require('oci-waas').WaasClient;","symbol":"WaasClient","correct":"import { WaasClient } from 'oci-waas';"},{"note":"Models are exported from a subpath; they are not directly on the main export.","wrong":"const models = require('oci-waas').models;","symbol":"models","correct":"import * as models from 'oci-waas/lib/models';"},{"note":"Type interfaces are not re-exported from the main module; must import from the models subpath.","wrong":"import { CreateCertificateDetails } from 'oci-waas';","symbol":"CreateCertificateDetails","correct":"import { CreateCertificateDetails } from 'oci-waas/lib/models';"}],"quickstart":{"code":"import { WaasClient } from 'oci-waas';\nimport * as models from 'oci-waas/lib/models';\nimport { common } from 'oci-common';\n\nconst provider = new common.ConfigFileAuthenticationDetailsProvider();\nconst client = new WaasClient({ authenticationDetailsProvider: provider });\n\nasync function listEdgeSubnets() {\n  const request: models.ListEdgeSubnetsRequest = {};\n  const response = await client.listEdgeSubnets(request);\n  console.log(response.items);\n}\n\nlistEdgeSubnets().catch(console.error);","lang":"typescript","description":"Shows how to create a WaasClient, list edge subnets, and use typed request models."},"warnings":[{"fix":"Use ES module imports (import) and ensure package.json includes \"type\": \"module\".","message":"In v2.x, the SDK migrated to ESM-only. CommonJS require() will throw an error.","severity":"breaking","affected_versions":">=2.0.0"},{"fix":"Use `client.getPolicy(request)` instead.","message":"The method `getWaasPolicy` is deprecated in favor of `getPolicy`.","severity":"deprecated","affected_versions":">=2.100.0"},{"fix":"Set OCI_REGION environment variable or pass region in the client configuration.","message":"Authentication via instance principals requires explicit OCI_REGION environment variable.","severity":"gotcha","affected_versions":"*"}],"env_vars":null,"search_vec":"'2':33 '2.132.0':19 '2025':89 'acceler':12 'access':38 'api':63,85 'applic':11,47 'approxim':31 'automat':73 'certif':53 'cli':60 'cloud':6 'compar':55 'declar':71 'design':92 'direct':64 'edg':50 'environ':95 'esm':99 'everi':32 'firewal':48 'handl':78 'includ':72 'infrastructur':7 'javascript':101 'latest':80 'manag':40,54 'modul':100 'nativ':98 'node.js':3,17,94 'oci':1,8,27,41,59 'offer':67 'offici':26 'oper':86 'oracl':5 'packag':21 'part':23 'polici':51 'programmat':37 'provid':36 'releas':30 'request':74 'resourc':43 'rest':62 'retri':77 'safeti':69 'sdk':4,15,29,66 'secur':14 'sign':75 'support':82 'type':68 'typescript':28,70,102 'use':57,97 'version':18,81 'waa':2,9,42,84 'waf':49 'web':10,46 'week':34","created_at":"2026-06-04T18:53:31.889561+00:00","updated_at":"2026-06-04T18:53:31.889561+00:00","problems":[{"fix":"Run npm install oci-waas oci-common && ensure package.json has 'type': 'module'.","cause":"Package not installed or ESM-only import used in CJS project.","error":"Cannot find module 'oci-waas'"},{"fix":"Ensure authenticationDetailsProvider is correctly configured and passed to WaasClient constructor.","cause":"Client method called before proper authentication setup.","error":"TypeError: client.listEdgeSubnets is not a function"},{"fix":"Update oci-waas to latest version: npm install oci-waas@latest.","cause":"Missing or incorrect TypeScript type definitions.","error":"Property 'items' does not exist on type 'WaasClient.listEdgeSubnetsResponse'."}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/oracle/oci-typescript-sdk#readme","github":"https://github.com/oracle/oci-typescript-sdk","docs":null,"changelog":null,"pypi":null,"npm":"oci-waas","openapi_spec":null,"status_page":null,"smithery":null,"categories":["security","devops"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-04","next_check":"2026-09-02","install_tag":null}}