> ## Documentation Index
> Fetch the complete documentation index at: https://docs.statusstack.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Sources

> Understanding sources - the external services monitored by StatusStack

## What are Sources?

Sources are external services and platforms that StatusStack monitors for status updates, incidents, and outages. With over 5,200+ sources available, StatusStack provides comprehensive coverage of the services your applications depend on.

## Source Categories

StatusStack organizes sources into logical categories to help you find and monitor the services that matter to your business:

<CardGroup cols={2}>
  <Card title="Cloud Infrastructure" icon="cloud">
    AWS, Google Cloud, Azure, DigitalOcean, Cloudflare
  </Card>

  <Card title="Payment Processing" icon="credit-card">
    Stripe, PayPal, Square, Braintree, Adyen
  </Card>

  <Card title="Communication" icon="message-dots">
    Slack, Discord, Zoom, Twilio, SendGrid
  </Card>

  <Card title="Development Tools" icon="code">
    GitHub, GitLab, Docker Hub, NPM, CircleCI
  </Card>

  <Card title="Monitoring & Analytics" icon="chart-line">
    Datadog, New Relic, Google Analytics, Sentry
  </Card>

  <Card title="CDN & DNS" icon="globe">
    Cloudflare, AWS CloudFront, Fastly, Route 53
  </Card>
</CardGroup>

## Source Structure

Each source contains detailed information about the service:

```json theme={null}
{
  "id": "01234567-89ab-cdef-0123-456789abcdef",
  "name": "Amazon Web Services",
  "key": "aws",
  "description": "Cloud computing services by Amazon",
  "status": "operational",
  "logo_url": "https://statusstack.com/logos/aws.png",
  "status_page_url": "https://status.aws.amazon.com/",
  "service_url": "https://aws.amazon.com",
  "components_count": 15,
  "incidents_count": 0,
  "categories": ["cloud", "infrastructure"],
  "last_checked_at": "2024-03-20T14:30:00Z"
}
```

### Key Fields

<ResponseField name="key" type="string">
  Unique identifier for the source (e.g., "aws", "stripe", "github")
</ResponseField>

<ResponseField name="status" type="string">
  Current overall status: operational, degraded, down, maintenance
</ResponseField>

<ResponseField name="status_page_url" type="string">
  Link to the official status page maintained by the service provider
</ResponseField>

<ResponseField name="components_count" type="integer">
  Number of individual components monitored within this source
</ResponseField>

<ResponseField name="last_checked_at" type="string">
  When StatusStack last updated the source's status information
</ResponseField>

## Source Status Levels

Sources can have four different status levels:

<AccordionGroup>
  <Accordion title="Operational" icon="check-circle" color="green">
    **All systems functioning normally**

    The service is running without any known issues. All components are operational and users should experience normal functionality.
  </Accordion>

  <Accordion title="Degraded" icon="exclamation-triangle" color="yellow">
    **Some functionality may be impacted**

    The service is experiencing minor issues that may affect some users or features, but core functionality remains available.
  </Accordion>

  <Accordion title="Down" icon="x-circle" color="red">
    **Service is experiencing significant issues**

    The service is largely unavailable or experiencing major problems that significantly impact user experience.
  </Accordion>

  <Accordion title="Maintenance" icon="tools" color="blue">
    **Scheduled maintenance in progress**

    The service is undergoing planned maintenance. Some functionality may be temporarily unavailable.
  </Accordion>
</AccordionGroup>

## Components

Most sources contain multiple components that represent individual services or features:

### AWS Components Example

* **EC2** - Elastic Compute Cloud
* **S3** - Simple Storage Service
* **RDS** - Relational Database Service
* **Lambda** - Serverless computing
* **CloudFront** - Content Delivery Network

### Stripe Components Example

* **API** - Core payment processing API
* **Dashboard** - Merchant dashboard interface
* **Webhooks** - Event notification system
* **Connect** - Platform marketplace payments

### Component Hierarchy

Some sources have hierarchical component structures:

```
GitHub
├── API
├── Git Operations
├── GitHub Pages
├── Actions
│   ├── Workflows
│   └── Packages
└── Issues & Pull Requests
```

## Data Sources

StatusStack gathers source information from multiple data sources:

<AccordionGroup>
  <Accordion title="Official Status Pages">
    Primary source of truth - official status pages maintained by service providers

    **Examples:**

    * status.aws.amazon.com
    * status.stripe.com
    * [www.githubstatus.com](http://www.githubstatus.com)
  </Accordion>

  <Accordion title="RSS/Atom Feeds">
    Standardized feeds that provide structured status updates

    **Benefits:**

    * Real-time notifications
    * Structured incident data
    * Historical information
  </Accordion>

  <Accordion title="API Endpoints">
    Direct integration with service provider APIs for real-time status

    **Examples:**

    * Statuspage.io API
    * Custom provider APIs
    * Health check endpoints
  </Accordion>

  <Accordion title="Social Media">
    Twitter and other social platforms for service announcements

    **Use cases:**

    * Breaking incident news
    * Service announcements
    * Maintenance notifications
  </Accordion>
</AccordionGroup>

## Monitoring Frequency

StatusStack checks sources at different intervals based on their criticality and data source:

* **Critical Infrastructure**: Every 30 seconds
* **High-Traffic Services**: Every 1-2 minutes
* **Standard Services**: Every 5 minutes
* **Low-Priority Services**: Every 15 minutes

## Regional Coverage

Many sources provide regional status information:

### AWS Regions

* us-east-1 (N. Virginia)
* us-west-2 (Oregon)
* eu-west-1 (Ireland)
* ap-southeast-1 (Singapore)

### Google Cloud Regions

* us-central1 (Iowa)
* europe-west1 (Belgium)
* asia-east1 (Taiwan)

### Multi-Region Services

Some services show global vs. regional status:

* **Global**: Overall service availability
* **Regional**: Specific geographic regions

## Custom Sources

In addition to the 5,200+ pre-configured sources, you can create **custom sources** to monitor services that aren't part of the built-in catalog. Custom sources are private to your organization and support two modes:

### URL-Based Sources

Point StatusStack at any public status page URL. The platform auto-detects the provider type (Statuspage.io, BetterStack, Instatus, AWS, GCP, Azure, GitHub, Cachet) and begins monitoring automatically.

```json theme={null}
{
  "name": "Partner Payment Gateway",
  "status_page_url": "https://status.partnerpay.com",
  "status_page_type": "statuspage_io",
  "status": "operational"
}
```

### Manual Sources

Create sources for internal services that don't have a public status page. You manage the status directly from the dashboard.

```json theme={null}
{
  "name": "Internal User Service",
  "type": "manual",
  "status": "operational"
}
```

### Organization Limits

Each organization can create up to **10 custom sources** by default. Enterprise plans can request higher limits.

### Website Monitors

You can also monitor your own websites and APIs with [Custom Monitors](/guides/custom-monitoring):

```json theme={null}
{
  "name": "Company Website",
  "url": "https://mycompany.com",
  "check_type": "https",
  "interval": 60
}
```

<Card title="Custom Sources Guide" icon="plus" href="/guides/custom-sources">
  Learn how to create and manage custom sources for your internal services
</Card>

## Crowdsourced Incident Detection

StatusStack can detect service issues through community reports **before** official status pages update. When multiple users report problems with a service, StatusStack aggregates these reports, assigns a confidence score, and alerts your team early.

* **Early Warning**: Get notified about outages before the provider acknowledges them
* **Confidence Scoring**: Each crowdsourced incident is scored (0–100%) based on report volume and consistency
* **Detection Lead Time**: Track how far ahead of the official status page the issue was detected

<Card title="Crowdsourced Incidents Guide" icon="users" href="/guides/crowdsourced-incidents">
  Learn how crowdsourced incident detection works
</Card>

## Source Discovery

Find relevant sources for your stack:

### By Technology Stack

```bash theme={null}
# Get all cloud providers
GET /api/v1/sources?category=cloud

# Get payment processors
GET /api/v1/sources?category=payment

# Search for specific technologies
GET /api/v1/sources?search=kubernetes
```

### By Dependencies

Map your application dependencies to StatusStack sources:

```javascript theme={null}
const myDependencies = [
  'aws',        // Infrastructure
  'stripe',     // Payments
  'sendgrid',   // Email
  'github',     // Code hosting
  'cloudflare', // CDN
  'datadog'     // Monitoring
];

// Monitor all dependencies
const sources = await Promise.all(
  myDependencies.map(key => 
    fetch(`/api/v1/sources?search=${key}`)
  )
);
```

## Source Analytics

Track source reliability over time:

### Uptime Metrics

* **30-day uptime percentage**
* **Incident frequency**
* **Average resolution time**
* **Impact distribution**

### Performance Trends

* **Response time trends**
* **Outage duration patterns**
* **Peak incident times**
* **Regional performance differences**

## Working with Sources

### List All Sources

```javascript theme={null}
const sources = await fetch('/api/v1/sources');
```

### Get Source Details

```javascript theme={null}
const aws = await fetch('/api/v1/sources/aws');
```

### Monitor Specific Sources

```javascript theme={null}
const criticalSources = await fetch('/api/v1/sources?filter=aws,stripe,github');
```

### Get Source Components

```javascript theme={null}
const awsComponents = await fetch('/api/v1/sources/aws/components');
```

## Best Practices

<AccordionGroup>
  <Accordion title="Dependency Mapping">
    **Map your infrastructure dependencies**

    * Identify all external services your application uses
    * Create a dependency map showing relationships
    * Monitor both direct and indirect dependencies
    * Include backup and failover services
  </Accordion>

  <Accordion title="Criticality Assessment">
    **Assess business impact of each source**

    * **Critical**: Service unusable without this source
    * **Important**: Significant feature impact
    * **Monitoring**: Useful for awareness
    * **Optional**: Minimal business impact
  </Accordion>

  <Accordion title="Notification Strategy">
    **Configure appropriate alerting**

    * Immediate alerts for critical sources
    * Digest notifications for monitoring sources
    * Different channels for different severity levels
    * Escalation rules for prolonged outages
  </Accordion>

  <Accordion title="Status Communication">
    **Keep stakeholders informed**

    * Embed status widgets for customer-facing pages
    * Set up internal dashboards for operations teams
    * Prepare incident response communications
    * Document dependency relationships
  </Accordion>
</AccordionGroup>

## Source Reliability

Sources are continuously validated for reliability:

### Quality Metrics

* **Data freshness**: How recently the source was updated
* **Accuracy**: Historical accuracy of status information
* **Coverage**: Completeness of component monitoring
* **Responsiveness**: Speed of incident detection

### Reliability Indicators

* ✅ **Verified**: Official status page with reliable data
* ⚡ **Real-time**: Sub-minute status updates
* 📊 **Historical**: Rich historical incident data
* 🌍 **Regional**: Regional status breakdown available

## Common Source Patterns

### SaaS Platforms

Most SaaS platforms follow similar patterns:

* API endpoint monitoring
* Dashboard availability
* Feature-specific components
* Webhook delivery status

### Infrastructure Providers

Cloud providers typically organize by:

* Compute services
* Storage services
* Networking services
* Regional availability

### Payment Processors

Payment services usually monitor:

* Transaction processing
* API availability
* Webhook delivery
* Dashboard access
* Regional payment methods

Understanding sources helps you build comprehensive monitoring that covers all your critical dependencies and provides early warning when services your application relies on experience issues.
