PYTHONPATH=.:./services LINKEDIN_CLIENT_ID="xyz" LINKEDIN_CLIENT_SECRET="xyz" # LINKEDIN_ACCESS_TOKEN="xyz" OPENAI_API_KEY=xyz ANTHROPIC_API_KEY=xyz GOOGLE_API_KEY=xyz PPLX_API_KEY=xyz FIREWORKS_API_KEY=xyz AWS_BEDROCK_ACCESS_KEY_ID=xyz AWS_BEDROCK_SECRET_ACCESS_KEY=xyz # DB / services creds # postgres POSTGRES_USER="postgres_user" POSTGRES_PASSWORD="postgres_password" POSTGRES_HOST="localhost" POSTGRES_PORT="5432" POSTGRES_DB="workflow_service" LANGGRAPH_DATABASE_NAME="langgraph_db" PREFECT_DB="prefect_db" POSTGRES_DATABASES="${POSTGRES_DB},${PREFECT_DB},${LANGGRAPH_DATABASE_NAME}" DATABASE_URL="postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}" PREFECT_API_DATABASE_CONNECTION_URL="postgresql+asyncpg://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${PREFECT_DB}" # All the below databases will be created by the setup script if they don't exist! PREFECT_API_URL="http://localhost:4200/api" # Note: this is in ~/.prefect/storage directory by default! https://docs.prefect.io/v3/develop/results # Somehow doesn't work?? PREFECT_TASKS_DEFAULT_PERSIST_RESULT=false # TODO: handle prefect logging correctly and directory for both server and worker! PREFECT_LOGGING_LEVEL=INFO # mongo MONGO_ROOT_USERNAME="mongo_root_username" MONGO_ROOT_PASSWORD="mongo_root_password" # rabbitmq RABBITMQ_DEFAULT_USER="rabbitmq_default_user" RABBITMQ_DEFAULT_PASS="rabbitmq_default_password" # redis REDIS_PASSWORD="redis_password" # app APP_ENV=DEV LOG_LEVEL=INFO AUTH_REDIRECT_BASE_URL=http://localhost:3000 # true false DB_ECHO_STR=false APP_PORT=8000 # DEV, PROD # weaviate # WEAVIATE_API_KEY= WEAVIATE_QUERY_DEFAULTS_LIMIT=25 WEAVIATE_ANONYMOUS_ACCESS_ENABLED=true WEAVIATE_PERSISTENCE_DATA_PATH=/var/lib/weaviate WEAVIATE_ENABLE_MODULES=text2vec-cohere,text2vec-huggingface,text2vec-palm,text2vec-openai,generative-openai,generative-cohere,generative-palm,ref2vec-centroid,reranker-cohere,qna-openai WEAVIATE_DEFAULT_VECTORIZER_MODULE=none # WEAVIATE_CLUSTER_HOSTNAME=node1 # Database connection URLs MONGO_URL=mongodb://${MONGO_ROOT_USERNAME}:${MONGO_ROOT_PASSWORD}@localhost:27017 # MONGO_WORKFLOW_DATABASE # MONGO_WORKFLOW_STREAM_COLLECTION # MONGO_CUSTOMER_DATABASE # MONGO_CUSTOMER_COLLECTION RABBITMQ_URL=amqp://${RABBITMQ_DEFAULT_USER}:${RABBITMQ_DEFAULT_PASS}@localhost:5672 # REDIS_URL=redis://${REDIS_PASSWORD}@localhost:6379 REDIS_URL=redis://default:${REDIS_PASSWORD}@localhost:6379/0 # default: username redis? # Llama Index Cache DIR LLAMA_INDEX_CACHE_DIR=./data/.llamaindex_cache # Gmail SMPT Details # TODO: setup SMTP relay or use other mail provider! GMAIL_SMTP_HOST=smtp.gmail.com # For SSL, enter 465. # For TLS, enter 587. GMAIL_SMTP_PORT=587 GMAIL_SMTP_USERNAME=xyz@xyz.com # https://support.google.com/a/answer/176600?hl=en # https://support.google.com/mail/answer/185833 GMAIL_SMTP_PASSWORD=xyzxyzxyzxyz GMAIL_SMTP_FROM=xyz@xyz.com # GMAIL_SMTP_TO=recipient.email@example.com # To get your own secret key, run # openssl rand -hex 32 SECRET_KEY=xyzxyzxyzxyz JWT_ALGORITHM=HS256 JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30 # CONFIRMATION for DB reset script! CONFIRM_AUTH_DB_RESET=false # Default Superuser account details DEFAULT_SUPERUSER_EMAIL = xyz@xyz.com DEFAULT_SUPERUSER_PASSWORD = testpass #Scraper Service Settings RAPID_API_KEY=xyz # Base URL for the RapidAPI endpoint , this is constant so hardcoded this RAPID_API_HOST=linkedin-data-api.p.rapidapi.com # Retry Configuration # Max number of retries for failed requests SCRAPER_SERVICE_MAX_RETRIES=3 # Delay in seconds between retries SCRAPER_SERVICE_RETRY_DELAY=2 # Default Request Limits # Default max posts to fetch (multiple of 50 recommended) DEFAULT_POST_LIMIT=50 # Default max comments per post DEFAULT_COMMENT_LIMIT=50 # Default max reactions per post DEFAULT_REACTION_LIMIT=49 # Rate Limiting & Pacing # Default delay between individual API calls (e.g., in batch fetches) SCRAPER_SERVICE_DEFAULT_DELAY_SECONDS=5 # Number of items fetched per paginated request (e.g., posts) SCRAPER_SERVICE_BATCH_SIZE=50 # Max requests allowed within RATE_LIMIT_PERIOD (informational, client doesn't enforce this itself yet) SCRAPER_SERVICE_RATE_LIMIT_REQUESTS=10 # Time window in seconds for rate limiting (informational) SCRAPER_SERVICE_RATE_LIMIT_PERIOD=60 # Pagination Settings (Informational, client might use these) SCRAPING_SERVICE_DEFAULT_PAGE_SIZE=20 SCRAPING_SERVICE_MAX_PAGE_SIZE=100 SCRAPING_SERVICE_MIN_PAGE_SIZE=5 # Request Timeout SCRAPING_SERVICE_REQUEST_TIMEOUT=60