A command line interface for APIMatic.
Project description
# APIMatic CLI
[![PyPI version](https://badge.fury.io/py/apimatic-cli.svg)](https://badge.fury.io/py/apimatic-cli)
[![Build Status](https://travis-ci.org/apimatic/apimatic-cli.svg?branch=master)](https://travis-ci.org/apimatic/apimatic-cli)
### Overview
This command line tool serves as a wrapper over APIMatic's Python SDK allowing API providers to generate deployment ready SDKs of their APIs for ten platforms using a single command. The following functions are supported:
* Generate an SDK
* Validate an API description
* Transform an API description
### Installation
The quickest way is to install this tool as a package from pip:
```
pip install --upgrade apimatic-cli
```
If you prefer not to use pip, you can install it manually as well:
```
git clone https://github.com/apimatic/apimatic-cli.git
cd apmiatic-cli
python setup.py install
```
Alternatively, you can run this tool without installation:
```
git clone https://github.com/apimatic/apimatic-cli.git
cd apmiatic-cli
pip install -r requirements.txt
```
It's highly recommended to use a [virtual enviroment](http://docs.python-guide.org/en/latest/dev/virtualenvs/) if you choose to go this way.
### Usage
If you installed using pip, you can simply invoke the tool by typing:
```
apimatic-cli -h
```
Otherwise, if you chose not to install, make sure you're in the root folder of the repository and type:
```
python -m apimaticcli -h
```
To use this tool, you have to provide two positional arguments:
* command (generate, validate or transform)
* authentication type (fromapikey, fromuser or fromauthkey)
For information about further required or optional arguments, you can type -h as follows:
```
apimatic-cli generate fromapikey -h
```
### Options
Here is a list of all available options. You're going to be using a subset of these depending on the positional arguments you use.
```
-h or --help Displays the help text and exists.
--api-key The API key of the API description obtained from APIMatic.
--platform The platform for which the SDK needs to be generated. It can be one of:
cs_portable_net_lib, java_eclipse_jre_lib, java_gradle_android_lib,
objc_cocoa_touch_ios_lib, angular_javascript_lib, ruby_generic_lib,
python_generic_lib, php_generic_lib, node_javascript_lib, go_generic_lib
--download-to The path of the folder in which to download the file.
--name The name of the generated SDK.
--email The email address of the user's APIMatic account.
--password The password of the user's APIMatic account.
--auth-key The authentication key of the user's APIMatic account.
--url The URL of the API description.
--file The path of the API description file.
--format The format to convert the API description to. It can be one of:
APIBluePrint, Swagger10, Swagger20, SwaggerYaml, WADL2009, RAML, APIMATIC
--download-as The name (and extension) of the downloaded file.
--skip-unzip Unzipping of downloaded SDKs is skipped if this option is used.
```
### Examples
Generate a C# SDK using an API integretation key:
```
apimatic-cli generate fromapikey --api-key <your key> --platform cs_portable_net_lib --download-to ./SDKs
```
Generate a Python SDK using user credentials and an API description file and skip unzipping:
```
apimatic-cli generate fromuser --email <your APIMatic account email> --password <your APIMatic account password> --name TestSDK --file ./data/calculator.json --platform python_generic_lib --download-to ./SDKs --skip-unzip
```
Generate a Ruby SDK using a user authentication key and an API description URL and rename the downloaded SDK:
```
apimatic-cli generate fromauthkey --auth-key <your APIMatic account authentication key> --name TestSDK --url http://www.somewebsite.com/apidescription.json --platform ruby_generic_lib --download-to ./SDKs --download-as CustomName
```
Validate an API description using an API integration key:
```
apimatic-cli validate fromapikey --api-key <your key>
```
Validate an API description using a user authentication key and an API description file:
```
apimatic-cli validate fromauthkey --auth-key <your APIMatic account authentication key> --file ./data/calculator.json
```
Validate an API description using user credentials and an API description URL:
```
apimatic-cli validate fromuser --email <your APIMatic account email> --password <your APIMatic account password> --url http://www.somewebsite.com/apidescription.json
```
Transform an API description to API Blueprint 1A format using an API integretation key:
```
apimatic-cli transform fromapikey --api-key <your key> --format APIBluePrint
```
Transform an API description to APIMatic format using user credentials and an API description file:
```
apimatic-cli transform fromuser --email <your APIMatic account email> --password <your APIMatic account password> --file ./data/calculator.raml --format APIMATIC
```
Transform an API description to Swagger v2.0 (YAML) format using a user authentication key and an API description URL:
```
apimatic-cli transform fromauthkey --auth-key <your APIMatic account authentication key> --url http://www.somewebsite.com/apidescription.json --format SwaggerYaml
```
[![PyPI version](https://badge.fury.io/py/apimatic-cli.svg)](https://badge.fury.io/py/apimatic-cli)
[![Build Status](https://travis-ci.org/apimatic/apimatic-cli.svg?branch=master)](https://travis-ci.org/apimatic/apimatic-cli)
### Overview
This command line tool serves as a wrapper over APIMatic's Python SDK allowing API providers to generate deployment ready SDKs of their APIs for ten platforms using a single command. The following functions are supported:
* Generate an SDK
* Validate an API description
* Transform an API description
### Installation
The quickest way is to install this tool as a package from pip:
```
pip install --upgrade apimatic-cli
```
If you prefer not to use pip, you can install it manually as well:
```
git clone https://github.com/apimatic/apimatic-cli.git
cd apmiatic-cli
python setup.py install
```
Alternatively, you can run this tool without installation:
```
git clone https://github.com/apimatic/apimatic-cli.git
cd apmiatic-cli
pip install -r requirements.txt
```
It's highly recommended to use a [virtual enviroment](http://docs.python-guide.org/en/latest/dev/virtualenvs/) if you choose to go this way.
### Usage
If you installed using pip, you can simply invoke the tool by typing:
```
apimatic-cli -h
```
Otherwise, if you chose not to install, make sure you're in the root folder of the repository and type:
```
python -m apimaticcli -h
```
To use this tool, you have to provide two positional arguments:
* command (generate, validate or transform)
* authentication type (fromapikey, fromuser or fromauthkey)
For information about further required or optional arguments, you can type -h as follows:
```
apimatic-cli generate fromapikey -h
```
### Options
Here is a list of all available options. You're going to be using a subset of these depending on the positional arguments you use.
```
-h or --help Displays the help text and exists.
--api-key The API key of the API description obtained from APIMatic.
--platform The platform for which the SDK needs to be generated. It can be one of:
cs_portable_net_lib, java_eclipse_jre_lib, java_gradle_android_lib,
objc_cocoa_touch_ios_lib, angular_javascript_lib, ruby_generic_lib,
python_generic_lib, php_generic_lib, node_javascript_lib, go_generic_lib
--download-to The path of the folder in which to download the file.
--name The name of the generated SDK.
--email The email address of the user's APIMatic account.
--password The password of the user's APIMatic account.
--auth-key The authentication key of the user's APIMatic account.
--url The URL of the API description.
--file The path of the API description file.
--format The format to convert the API description to. It can be one of:
APIBluePrint, Swagger10, Swagger20, SwaggerYaml, WADL2009, RAML, APIMATIC
--download-as The name (and extension) of the downloaded file.
--skip-unzip Unzipping of downloaded SDKs is skipped if this option is used.
```
### Examples
Generate a C# SDK using an API integretation key:
```
apimatic-cli generate fromapikey --api-key <your key> --platform cs_portable_net_lib --download-to ./SDKs
```
Generate a Python SDK using user credentials and an API description file and skip unzipping:
```
apimatic-cli generate fromuser --email <your APIMatic account email> --password <your APIMatic account password> --name TestSDK --file ./data/calculator.json --platform python_generic_lib --download-to ./SDKs --skip-unzip
```
Generate a Ruby SDK using a user authentication key and an API description URL and rename the downloaded SDK:
```
apimatic-cli generate fromauthkey --auth-key <your APIMatic account authentication key> --name TestSDK --url http://www.somewebsite.com/apidescription.json --platform ruby_generic_lib --download-to ./SDKs --download-as CustomName
```
Validate an API description using an API integration key:
```
apimatic-cli validate fromapikey --api-key <your key>
```
Validate an API description using a user authentication key and an API description file:
```
apimatic-cli validate fromauthkey --auth-key <your APIMatic account authentication key> --file ./data/calculator.json
```
Validate an API description using user credentials and an API description URL:
```
apimatic-cli validate fromuser --email <your APIMatic account email> --password <your APIMatic account password> --url http://www.somewebsite.com/apidescription.json
```
Transform an API description to API Blueprint 1A format using an API integretation key:
```
apimatic-cli transform fromapikey --api-key <your key> --format APIBluePrint
```
Transform an API description to APIMatic format using user credentials and an API description file:
```
apimatic-cli transform fromuser --email <your APIMatic account email> --password <your APIMatic account password> --file ./data/calculator.raml --format APIMATIC
```
Transform an API description to Swagger v2.0 (YAML) format using a user authentication key and an API description URL:
```
apimatic-cli transform fromauthkey --auth-key <your APIMatic account authentication key> --url http://www.somewebsite.com/apidescription.json --format SwaggerYaml
```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
apimatic-cli-2.5.tar.gz
(20.0 kB
view details)
Built Distribution
File details
Details for the file apimatic-cli-2.5.tar.gz
.
File metadata
- Download URL: apimatic-cli-2.5.tar.gz
- Upload date:
- Size: 20.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b91f3071d06d2672702351edc44d357c3f68bd2855ca38dba428a138e9447f6 |
|
MD5 | c3fba45cdfeac281331c45e41dae5127 |
|
BLAKE2b-256 | 620dae27d93b86c49bbce10455a968f316d36b4e179a84192ad7cbd32d1189e6 |
File details
Details for the file apimatic_cli-2.5-py3-none-any.whl
.
File metadata
- Download URL: apimatic_cli-2.5-py3-none-any.whl
- Upload date:
- Size: 30.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a30c1287c28dd45ab15c3d186853c7ab000fa564129975b84e80e2fc13d48d4 |
|
MD5 | 4e07f3e81dbcda7678e69b138ce048d9 |
|
BLAKE2b-256 | c22cfbe52736e003d19f3854e78bcdfa69e29433b63305782f32d4fb7c1ed1b3 |