Skip to content

The AWS Services Backend is a REST API service built using Feathers.js that allows you to manipulate AWS Services actions.

License

Notifications You must be signed in to change notification settings

FernandoZorek/aws-services

Repository files navigation

AWS Services Backend

aws-services-backend

The AWS Services Backend is a REST API service built using Feathers.js that allows you to manipulate AWS Services actions. It provides endpoints for managing domains aws, allows listing, creating and deleting domains.

Features

  • Listing Route 53 domains: Allows listing all hosted domains in your AWS account.
  • Creating Route 53 domains: Allows creating new domains in your AWS account.
  • Deleting Route 53 domains: Allows deleting existing domains in your AWS

Note: Only subdomain management is enabled in this project, but it can be edited to manage domains.

Tech

This project uses several open source projects to function correctly::

  • Docker - Platform for developing, shipping, and running applications using containerization;
  • Node.js - JavaScript runtime built on Chrome’s V8 JavaScript engine;
  • Express.js - Fast, unopinionated, minimalist web framework for Node.js;
  • Feathers.js - The API and Real-time Application Framework;
  • SDK-AWS - The SDK provides first class TypeScript support and makes it easy to call AWS services using idiomatic JavaScript APIs to build Node.js, web, and mobile web applications;

Installation

Dillinger requires Node.js v20+ to run.

Install the dependencies and devDependencies and start the server.

yarn

Start the app in development mode (hot-code reloading, error reporting, etc.)

docker-compose up

Usage

List domains

Endpoint: GET /domains Description: Listing all hosted domains in your AWS account. Response:

[
  {
    "Name": "your.domain.com.",
    "Type": "A",
    "ResourceRecords":[],
    "AliasTarget":{
      "HostedZoneId": "XXXXXXXXXXXX",
      "DNSName": "s3-website-sa-east-1.amazonaws.com.",
      "EvaluateTargetHealth": true
    }
  },
  {
    "Name": "subdomain.your.domain.com.",
    "Type": "A",
    "TTL": 300,
    "ResourceRecords":[
      {
        "Value": "00.00.00.000"
      }
    ]
  },
  // ... other queues
]
Create domains

Endpoint: POST /domains Description: Creating new domains in your AWS account. Request Body:

{
  "subdomain": "newsubdomain"
}
});
Delete domains

Endpoint: DELETE /domains/${newsubdomain} Description: Deleting existing domains in your AWS. Response:*

{
  "ChangeInfo":{
    "Id": "/change/XXXXXXXXXXXX",
    "Status": "PENDING",
    "SubmittedAt": "2024-04-30T22:09:10.491Z"
  }
}

License

MIT Free Software, Hell Yeah!

About

The AWS Services Backend is a REST API service built using Feathers.js that allows you to manipulate AWS Services actions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published