

# Amazon ParallelCluster API
<a name="api-reference-v3"></a>

**What is Amazon ParallelCluster API?**

Amazon ParallelCluster API is a serverless application that, once deployed to your Amazon Web Services account, provides programmatic access to Amazon ParallelCluster features through an API. 

Amazon ParallelCluster API is distributed as a self-contained [Amazon CloudFormation](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html) template that includes an [Amazon API Gateway](https://docs.amazonaws.cn/apigateway/latest/developerguide/welcome.html) endpoint, that exposes Amazon ParallelCluster features, and an [Amazon Lambda](https://docs.amazonaws.cn/lambda/latest/dg/welcome.html) function, that takes care of processing the invoked features. 

The following image shows a high-level architecture diagram of the Amazon ParallelCluster API infrastructure.

 ![\[a high-level architecture diagram of the ParallelCluster API infrastructure\]](http://docs.amazonaws.cn/en_us/parallelcluster/latest/ug/images/API-Architecture-r2.png) 

## Amazon ParallelCluster API Documentation
<a name="api-reference-documentation-v3"></a>

The OpenAPI specification file that describes the Amazon ParallelCluster API can be downloaded from: 

```
https://<REGION>-aws-parallelcluster.s3.<REGION>.amazonaws.com/parallelcluster/<VERSION>/api/ParallelCluster.openapi.yaml
```

Starting from the OpenAPI specification file, you can use one of the many available tools such as [ Swagger UI](https://swagger.io/tools/swagger-ui/) or [Redoc](https://github.com/Redocly/redoc) to generate documentation for the Amazon ParallelCluster API. 

**How to deploy Amazon ParallelCluster API**

To deploy Amazon ParallelCluster API you need to be an Administrator of the Amazon Web Services account. 

The template used to deploy the API is available at the following URL:

```
https://<REGION>-aws-parallelcluster.s3.<REGION>.amazonaws.com/parallelcluster/<VERSION>/api/parallelcluster-api.yaml
```

where `<REGION>` is the Amazon Web Services Region where the API needs to be deployed to and `<VERSION>` is the Amazon ParallelCluster version (e.g. 3.15.0). 

Amazon Lambda uses a Lambda layer interface with the [Amazon ParallelCluster Python library API](pc-py-library-v3.md) to process the API invoked features.

**Warning**  
Any user in the Amazon Web Services account, that has privileged access to Amazon Lambda or Amazon API Gateway services, automatically inherits permissions to administer Amazon ParallelCluster API resources.