{"id":13612710,"url":"https://github.com/apimatic/apimatic-cli","last_synced_at":"2026-01-02T08:25:12.243Z","repository":{"id":46038102,"uuid":"67479343","full_name":"apimatic/apimatic-cli","owner":"apimatic","description":"A CLI for APIMatic to validate and transform API specs and to create client libraries. ","archived":false,"fork":false,"pushed_at":"2025-03-17T08:04:47.000Z","size":1013,"stargazers_count":88,"open_issues_count":9,"forks_count":17,"subscribers_count":2,"default_branch":"alpha","last_synced_at":"2025-03-28T11:06:29.540Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.apimatic.io/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apimatic.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-09-06T06:20:08.000Z","updated_at":"2025-03-17T08:04:49.000Z","dependencies_parsed_at":"2024-01-16T23:30:14.191Z","dependency_job_id":"9701e9fd-fc04-483f-9c32-f133717062db","html_url":"https://github.com/apimatic/apimatic-cli","commit_stats":{"total_commits":202,"total_committers":12,"mean_commits":"16.833333333333332","dds":"0.47029702970297027","last_synced_commit":"407c72fad4d7143197fe97656c26fe9d2d1309be"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fapimatic-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fapimatic-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fapimatic-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fapimatic-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apimatic","download_url":"https://codeload.github.com/apimatic/apimatic-cli/tar.gz/refs/heads/alpha","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247174406,"owners_count":20896076,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T20:00:33.448Z","updated_at":"2026-01-02T08:25:12.183Z","avatar_url":"https://github.com/apimatic.png","language":"TypeScript","funding_links":[],"categories":["HarmonyOS"],"sub_categories":["Windows Manager"],"readme":"@apimatic/cli\n=============\napimatic is in Alpha.\n\nThe official CLI for APIMatic.\n\n[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)\n[![Version](https://img.shields.io/npm/v/@apimatic/cli.svg)](https://npmjs.org/package/@apimatic/cli)\n[![Downloads/week](https://img.shields.io/npm/dw/@apimatic/cli.svg)](https://npmjs.org/package/@apimatic/cli)\n[![License](https://img.shields.io/npm/l/@apimatic/cli.svg)](https://github.com/apimatic/apimatic-cli/blob/master/package.json)\n\n# Getting Started\n\nTo get started with APIMatic's CLI using a step by step wizard, run the following command: \n\n```sh-session\n$ apimatic portal:quickstart\n```\n\n\u003c!-- toc --\u003e\n* [Usage](#usage)\n* [Commands](#commands)\n\u003c!-- tocstop --\u003e\n# Usage\n\u003c!-- usage --\u003e\n```sh-session\n$ npm install -g @apimatic/cli\n$ apimatic COMMAND\nrunning command...\n$ apimatic (--version)\n@apimatic/cli/0.0.0-alpha.0 win32-x64 node-v20.18.3\n$ apimatic --help [COMMAND]\nUSAGE\n  $ apimatic COMMAND\n...\n```\n\u003c!-- usagestop --\u003e\n\n# Commands\n\u003c!-- commands --\u003e\n* [`apimatic api:transform`](#apimatic-apitransform)\n* [`apimatic api:validate`](#apimatic-apivalidate)\n* [`apimatic auth:login`](#apimatic-authlogin)\n* [`apimatic auth:logout`](#apimatic-authlogout)\n* [`apimatic auth:status`](#apimatic-authstatus)\n* [`apimatic autocomplete [SHELL]`](#apimatic-autocomplete-shell)\n* [`apimatic help [COMMAND]`](#apimatic-help-command)\n* [`apimatic portal:generate`](#apimatic-portalgenerate)\n* [`apimatic portal:quickstart`](#apimatic-portalquickstart)\n* [`apimatic portal:serve`](#apimatic-portalserve)\n* [`apimatic sdk:generate`](#apimatic-sdkgenerate)\n\n## `apimatic api:transform`\n\nTransform API specifications from one format to another. Supports [10+ different formats](https://www.apimatic.io/transformer/#supported-formats) including OpenApi/Swagger, RAML, WSDL and Postman Collections.\n\n```\nUSAGE\n  $ apimatic api:transform --format \u003cvalue\u003e [--file \u003cvalue\u003e] [--url \u003cvalue\u003e] [--destination \u003cvalue\u003e] [-f]\n    [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  -f, --force                overwrite if same file exist in the destination\n  --auth-key=auth-key        override current authentication state with an authentication key\n\n  --destination=destination  [default: /home/runner/work/apimatic-cli/apimatic-cli/cli] directory to download\n                             transformed file to\n\n  --file=file                path to the API specification file to transform\n\n  --format=format            (required) specification format to transform API specification into\n                             APIMATIC|WADL2009|WSDL|SWAGGER10|SWAGGER20|SWAGGERYAML|OAS3|OPENAPI3YAML|APIBLUEPRINT|RAML|\n                             RAML10|POSTMAN10|POSTMAN20|GRAPHQLSCHEMA\n\n  --url=url                  URL to the API specification file to transform. Can be used in place of the --file option\n                             if the API specification is publicly available.\n\nDESCRIPTION\n  Transform API specifications from one format to another. Supports [10+ different\n  formats](https://www.apimatic.io/transformer/#supported-formats) including OpenApi/Swagger, RAML, WSDL and Postman\n  Collections.\n\nEXAMPLES\n  $ apimatic api:transform --format=\"OpenApi3Json\" --file=\"./specs/sample.json\" --destination=\"D:/\"\n  Success! Your transformed file is located at D:/Transformed_OpenApi3Json.json\n\n  $ apimatic api:transform --format=RAML --url=\"https://petstore.swagger.io/v2/swagger.json\"  --destination=\"D:/\"\n  Success! Your transformed file is located at D:/swagger_raml.yaml\n```\n\n_See code: [src/commands/api/transform.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/api/transform.ts)_\n\n## `apimatic api:validate`\n\nValidate the syntactic and semantic correctness of an API specification\n\n```\nUSAGE\n  $ apimatic api:validate [--file \u003cvalue\u003e] [--url \u003cvalue\u003e] [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  --auth-key=auth-key  override current authentication state with an authentication key\n  --file=file          Path to the API specification file to validate\n\n  --url=url            URL to the specification file to validate. Can be used in place of the --file option if the API\n                       specification is publicly available.\n\nDESCRIPTION\n  Validate the syntactic and semantic correctness of an API specification\n\nEXAMPLES\n  $ apimatic api:validate --file=\"./specs/sample.json\"\n  Specification file provided is valid\n\n  $ apimatic api:validate --url=https://petstore.swagger.io/v2/swagger.json\n  Specification file provided is valid\n```\n\n_See code: [src/commands/api/validate.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/api/validate.ts)_\n\n## `apimatic auth:login`\n\nLogin using your APIMatic credentials or an API Key\n\n```\nUSAGE\n  $ apimatic auth:login [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  --auth-key=auth-key  Set authentication key for all commands\n\nDESCRIPTION\n  Login using your APIMatic credentials or an API Key\n\nEXAMPLES\n  $ apimatic auth:login\n  Please enter your registered email: apimatic-user@gmail.com\n  Please enter your password: *********\n\n  You have successfully logged into APIMatic\n\n  $ apimatic auth:login --auth-key=xxxxxx\n  Authentication key successfully set\n```\n\n_See code: [src/commands/auth/login.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/auth/login.ts)_\n\n## `apimatic auth:logout`\n\nClear local login credentials\n\n```\nUSAGE\n  $ apimatic auth:logout\n\nDESCRIPTION\n  Clear local login credentials\n\nEXAMPLES\n  $ apimatic auth:logout\n  Logged out\n```\n\n_See code: [src/commands/auth/logout.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/auth/logout.ts)_\n\n## `apimatic auth:status`\n\nView current authentication state\n\n```\nUSAGE\n  $ apimatic auth:status\n\nDESCRIPTION\n  View current authentication state\n\nEXAMPLES\n  $ apimatic auth:status\n  Currently logged in as apimatic-client@gmail.com\n```\n\n_See code: [src/commands/auth/status.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/auth/status.ts)_\n\n## `apimatic autocomplete [SHELL]`\n\nDisplay autocomplete installation instructions.\n\n```\nUSAGE\n  $ apimatic autocomplete [SHELL] [-r]\n\nARGUMENTS\n  SHELL  shell type\n\nFLAGS\n  -r, --refresh-cache  Refresh cache (ignores displaying instructions)\n\nDESCRIPTION\n  Display autocomplete installation instructions.\n\nEXAMPLES\n  $ apimatic autocomplete\n  $ apimatic autocomplete bash\n  $ apimatic autocomplete zsh\n  $ apimatic autocomplete --refresh-cache\n```\n\n_See code: [@oclif/plugin-autocomplete](https://github.com/oclif/plugin-autocomplete/blob/main/src/commands/autocomplete/index.ts)_\n\n## `apimatic help [COMMAND]`\n\nDisplay help for apimatic.\n\n```\nUSAGE\n  $ apimatic help [COMMAND]\n\nARGUMENTS\n  COMMAND  command to show help for\n\nDESCRIPTION\n  Display help for apimatic.\n```\n\n_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/main/src/commands/help.ts)_\n\n## `apimatic portal:generate`\n\nGenerate and download a static API Documentation portal. Requires an input directory containing API specifications, a config file and optionally, markdown guides. For details, refer to the [documentation](https://docs.apimatic.io/platform-api/#/http/guides/generating-on-prem-api-portal/build-file-reference)\n\n```\nUSAGE\n  $ apimatic portal:generate [--folder \u003cvalue\u003e] [--destination \u003cvalue\u003e] [-f] [--zip] [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  -f, --force                overwrite if a portal exists in the destination\nDESCRIPTION\n  Generate and download a static API Documentation portal. Requires an input directory containing API specifications, a\n  config file and optionally, markdown guides. For details, refer to the [documentation](https://docs.apimatic.io/platfo\n  rm-api/#/http/guides/generating-on-prem-api-portal/build-file-reference)\n\nEXAMPLES\n  $ apimatic portal:generate --folder=\"./portal/\" --destination=\"D:/\"\n  Your portal has been generated at D:/\n```\n\n_See code: [src/commands/portal/generate.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/portal/generate.ts)_\n\n## `apimatic portal:quickstart`\n\nCreate your first API Portal using APIMatic’s Docs as Code offering.\n\n```\nUSAGE\n  $ apimatic portal:quickstart\n\nDESCRIPTION\n  Create your first API Portal using APIMatic’s Docs as Code offering.\n\nEXAMPLES\n  $ apimatic portal:quickstart\n```\n\n_See code: [src/commands/portal/quickstart.ts](https://github.com/apimatic/apimatic-cli/blob/v1.0.1-alpha.11/src/commands/portal/quickstart.ts)_\n\n## `apimatic portal:serve`\n\nGenerate and deploy a Docs as Code portal with hot reload.\n\n```\nUSAGE\n  $ apimatic portal:serve [-p \u003cvalue\u003e] [-d \u003cvalue\u003e] [-s \u003cvalue\u003e] [-o] [--no-reload] [-i \u003cvalue\u003e] [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  -d, --destination=\u003cvalue\u003e  [default: ./api-portal] Directory to store and serve the generated portal.\n  -i, --ignore=\u003cvalue\u003e       Comma-separated list of files/directories to ignore.\n  -o, --open                 Open the portal in the default browser.\n  -p, --port=\u003cvalue\u003e         [default: 3000] Port to serve the portal.\n  -s, --source=\u003cvalue\u003e       [default: ./] Source directory containing specs, content, and build file. By default, the\n                             current directory is used.\n      --auth-key=\u003cvalue\u003e     Override current authentication state with an authentication key.\n      --no-reload            Disable hot reload.\n\nDESCRIPTION\n  Generate and deploy a Docs as Code portal with hot reload.\n\nEXAMPLES\n  $ apimatic portal:serve --source=\"./\" --destination=\"./api-portal\" --port=3000 --open --no-reload\n```\n\n_See code: [src/commands/portal/serve.ts](https://github.com/apimatic/apimatic-cli/blob/v1.0.1-alpha.11/src/commands/portal/serve.ts)_\n\n## `apimatic sdk:generate`\n\nGenerate SDK for your APIs\n\n```\nUSAGE\n  $ apimatic sdk:generate --platform \u003cvalue\u003e [--file \u003cvalue\u003e] [--url \u003cvalue\u003e] [--destination \u003cvalue\u003e] [-f] [--zip] [--auth-key \u003cvalue\u003e]\n\nFLAGS\n  -f, --force                overwrite if an SDK already exists in the destination\n  --auth-key=auth-key        override current authentication state with an authentication key\n\n  --destination=destination  [default: /home/runner/work/apimatic-cli/apimatic-cli/cli] directory to download the\n                             generated SDK to\n\n  --file=file                path to the API specification to generate SDKs for\n\n  --platform=platform        (required) language platform for sdk\n                             Simple: CSHARP|JAVA|PYTHON|RUBY|PHP|TYPESCRIPT\n                             Legacy: CS_NET_STANDARD_LIB|CS_PORTABLE_NET_LIB|CS_UNIVERSAL_WINDOWS_PLATFORM_LIB|\n                             JAVA_ECLIPSE_JRE_LIB|PHP_GENERIC_LIB|PYTHON_GENERIC_LIB|RUBY_GENERIC_LIB|\n                             TS_GENERIC_LIB\n\n  --url=url                  URL to the API specification to generate SDKs for. Can be used in place of the --file\n                             option if the API specification is publicly available.\n      --zip                  download the generated SDK as a .zip archive\n\nDESCRIPTION\n  Generate SDK for your APIs\n\nEXAMPLES\n  $ apimatic sdk:generate --platform=\"CSHARP\" --file=\"./specs/sample.json\"\n  Generating SDK... done\n  Downloading SDK... done\n  Success! Your SDK is located at swagger_sdk_csharp\n\n  $ apimatic sdk:generate --platform=\"CSHARP\" --url=https://petstore.swagger.io/v2/swagger.json\n  Generating SDK... done\n  Downloading SDK... done\n  Success! Your SDK is located at swagger_sdk_csharp\n```\n\n_See code: [src/commands/sdk/generate.ts](https://github.com/apimatic/apimatic-cli/blob/alpha/src/commands/sdk/generate.ts)_\n\u003c!-- commandsstop --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fapimatic-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapimatic%2Fapimatic-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fapimatic-cli/lists"}