Skip to content

rishav2404/FastAPI-Integration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Integration Platform

This project is an integration platform that connects with various services like Airtable, Notion, and HubSpot. It uses FastAPI for the backend and React for the frontend.

Project Structure

Backend

The backend is built using FastAPI and handles OAuth2 authorization and data fetching from Airtable, Notion, and HubSpot.

Setup

  1. Create a virtual environment and activate it:

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  2. Install the dependencies:

    pip install -r backend/requirements.txt
  3. Create a .env file in the backend directory with the following content:

    REDIS_HOST=localhost
    HUBSPOT_CLIENT_ID=your_hubspot_client_id
    HUBSPOT_CLIENT_SECRET=your_hubspot_client_secret
    
  4. Run the FastAPI server:

    uvicorn backend.main:app --reload

Endpoints

  • GET /: Returns a welcome message.
  • POST /integrations/notion/authorize: Authorizes Notion integration.
  • GET /integrations/notion/oauth2callback: Handles Notion OAuth2 callback.
  • POST /integrations/notion/credentials: Retrieves Notion credentials.
  • POST /integrations/notion/load: Loads Notion data.
  • POST /integrations/airtable/authorize: Authorizes Airtable integration.
  • GET /integrations/airtable/oauth2callback: Handles Airtable OAuth2 callback.
  • POST /integrations/airtable/credentials: Retrieves Airtable credentials.
  • POST /integrations/airtable/load: Loads Airtable data.
  • POST /integrations/hubspot/authorize: Authorizes HubSpot integration.
  • GET /integrations/hubspot/oauth2callback: Handles HubSpot OAuth2 callback.
  • POST /integrations/hubspot/credentials: Retrieves HubSpot credentials.
  • POST /integrations/hubspot/load: Loads HubSpot data.

Frontend

The frontend is built using React and Material-UI. It provides a user interface to connect to the integrations and load data.

Setup

  1. Navigate to the frontend directory:

    cd frontend
  2. Install the dependencies:

    npm install
  3. Run the React development server:

    npm start

Components

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published