{"id":15166,"library":"qovery-typescript-axios","title":"Qovery OpenAPI TypeScript Axios Client","description":"qovery-typescript-axios is an OpenAPI client library specifically generated for interacting with the Qovery API, leveraging the popular Axios HTTP client. The package provides a strongly-typed TypeScript interface, automatically resolving type definitions via `package.json` for TypeScript projects, while also being fully compatible with JavaScript environments. It supports modern module systems like ES6 modules and CommonJS, and is designed for use in Node.js, Webpack, and Browserify environments. The current stable version is 1.1.864, with recent minor releases indicating active development. Its core differentiation lies in being a pre-generated, opinionated client for the Qovery platform, saving developers the effort of manual API integration and schema management by providing ready-to-use API services and models based on the Qovery OpenAPI specification.","status":"active","version":"1.1.864","language":"javascript","source_language":"en","source_url":"https://github.com/Qovery/qovery-client-typescript-axios","tags":["javascript","axios","typescript","openapi-client","openapi-generator","qovery-typescript-axios"],"install":[{"cmd":"npm install qovery-typescript-axios","lang":"bash","label":"npm"},{"cmd":"yarn add qovery-typescript-axios","lang":"bash","label":"yarn"},{"cmd":"pnpm add qovery-typescript-axios","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"This client library is generated to use Axios as its underlying HTTP client for making API requests.","package":"axios","optional":false}],"imports":[{"note":"The `Configuration` class is used to set up the base path, authentication (e.g., bearer token), and other client-wide settings. It is typically instantiated once. CommonJS require syntax might not work correctly if the package is primarily ESM.","wrong":"const Configuration = require('qovery-typescript-axios').Configuration;","symbol":"Configuration","correct":"import { Configuration } from 'qovery-typescript-axios';"},{"note":"Generated OpenAPI clients typically expose API services as named exports (e.g., `ApplicationsApi`, `OrganizationApi`). Direct default imports are usually incorrect.","wrong":"import ApplicationsApi from 'qovery-typescript-axios'; // Incorrect default import\nconst ApplicationsApi = require('qovery-typescript-axios').ApplicationsApi;","symbol":"ApplicationsApi","correct":"import { ApplicationsApi } from 'qovery-typescript-axios';"},{"note":"Type definitions for API models (like `Application`, `Environment`, etc.) are also named exports, available for type-checking and autocompletion in TypeScript projects.","symbol":"Application","correct":"import { Application } from 'qovery-typescript-axios';"}],"quickstart":{"code":"import { Configuration, ApplicationsApi } from 'qovery-typescript-axios';\n\nconst API_TOKEN = process.env.QOVERY_API_TOKEN ?? 'YOUR_QOVERY_API_TOKEN';\n\nif (!API_TOKEN || API_TOKEN === 'YOUR_QOVERY_API_TOKEN') {\n  console.error('Please set the QOVERY_API_TOKEN environment variable or replace the placeholder.');\n  process.exit(1);\n}\n\nconst configuration = new Configuration({\n  basePath: 'https://api.qovery.com',\n  accessToken: API_TOKEN,\n});\n\nconst applicationsApi = new ApplicationsApi(configuration);\n\nasync function listMyApplications() {\n  try {\n    // Assuming a method like 'listApplication' exists and takes optional parameters.\n    // The actual method name and parameters depend on the Qovery OpenAPI spec.\n    const response = await applicationsApi.listApplication(\n      'organization_id_example',\n      'project_id_example',\n      'environment_id_example',\n      0, // offset\n      10 // limit\n    );\n    console.log('Successfully fetched applications:', response.data);\n  } catch (error) {\n    if (error.isAxiosError) {\n      console.error('API Error:', error.response?.data || error.message);\n    } else {\n      console.error('An unexpected error occurred:', error);\n    }\n  }\n}\n\nlistMyApplications();","lang":"typescript","description":"This quickstart demonstrates how to configure the Qovery client with an API token and fetch a list of applications. It shows the basic setup for authentication and making an API call, including error handling."},"warnings":[{"fix":"Review your API calls against the latest Qovery API documentation and update your client instantiation and method calls as necessary. Be prepared for changes in method signatures, response structures, or required parameters.","message":"The README provided (v1.0.4) is significantly older than the current package version (v1.1.864). Breaking changes are highly probable between these versions due to updates in the underlying Qovery API specification, which directly drives the client generation. Always consult the official Qovery API documentation and the client's changelog on GitHub for specific breaking changes relevant to your version.","severity":"breaking","affected_versions":">=1.1.0"},{"fix":"Ensure you initialize the `Configuration` object with a valid `accessToken` (e.g., a Bearer token) obtained from Qovery. Verify the token's validity and permissions for the requested operations.","message":"Authentication is crucial for most API interactions. This client uses a `Configuration` object to pass the `accessToken`. Failing to provide a valid token will result in unauthorized (401) or forbidden (403) errors.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Audit your `package-lock.json` or `yarn.lock` files to confirm that your `axios` dependency is not `1.14.1` or `0.30.4`. Run `npm audit` or `yarn audit` regularly. If affected, remove `node_modules`, clear cache, and reinstall dependencies after updating `axios` to a safe version.","message":"A supply chain attack was reported for the underlying `axios` library, affecting versions `1.14.1` and `0.30.4`. While these specific versions of `axios` were removed from npm, it's critical to ensure your `package-lock.json` or `yarn.lock` does not contain these malicious versions if your project's `qovery-typescript-axios` dependency resolves to them.","severity":"breaking","affected_versions":"N/A (dependency specific)"}],"env_vars":null,"last_verified":"2026-04-21T00:00:00.000Z","next_check":"2026-07-20T00:00:00.000Z","problems":[{"fix":"Ensure `new ApplicationsApi(configuration)` is called with a properly instantiated `Configuration` object. Double-check the method name against the API documentation.","cause":"The API client (e.g., `applicationsApi`) was not correctly initialized with a `Configuration` object, or the API method called does not exist.","error":"TypeError: Cannot read properties of undefined (reading 'someMethod')"},{"fix":"Verify that your `Configuration` object's `accessToken` is correctly set with a valid Qovery API token. Ensure the token has the necessary scopes/permissions for the API endpoint being accessed. Renew the token if expired.","cause":"The API request was made without proper authentication, or the provided access token is invalid or expired.","error":"AxiosError: Request failed with status code 401 Unauthorized"},{"fix":"Run `npm install qovery-typescript-axios`. If using CommonJS, try `const { Symbol } = require('qovery-typescript-axios');` but prefer ESM imports where possible. Ensure your bundler is configured to handle both module types if mixing.","cause":"The package is not installed or the import path is incorrect. This can also happen due to CommonJS/ESM module incompatibility in certain bundler configurations.","error":"Module not found: Can't resolve 'qovery-typescript-axios'"}],"ecosystem":"npm"}