Files
2025-10-30 18:58:05 +01:00

121 lines
3.3 KiB
Plaintext

---
title: "List Providers"
api: "GET /api/v1/providers"
description: "Retrieve a list of all configured cloud providers with options for filtering."
---
Retrieve all configured cloud providers in your tenant. Providers represent your cloud accounts (AWS, Azure, GCP, etc.) that Prowler scans for security findings.
## Query Parameters
### Filtering Options
**By Type:**
- `filter[provider]`, `filter[provider__in]` - Filter by provider type: `aws`, `azure`, `gcp`, `kubernetes`, `m365`, `github`, `oci`
**By Status:**
- `filter[connected]` - Filter by connection status (boolean)
**By Alias:**
- `filter[alias]`, `filter[alias__icontains]` - Filter by provider alias
**By UID:**
- `filter[uid]`, `filter[uid__icontains]` - Filter by provider UID
**By Date:**
- `filter[inserted_at]`, `filter[inserted_at__date]` - Filter by creation date
- `filter[inserted_at__gte]`, `filter[inserted_at__lte]` - Filter by date range
### Pagination
- `page[number]` - Page number to retrieve
- `page[size]` - Number of results per page
### Sorting
- `sort` - Field to sort by: `id`, `-id`, `alias`, `-alias`, `inserted_at`, `-inserted_at`, `updated_at`, `-updated_at`
### Field Selection
- `fields[providers]` - Specify which fields to return
## Example Request
```bash
curl -X GET "https://api.prowler.com/api/v1/providers?filter[provider]=aws&filter[connected]=true" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/vnd.api+json"
```
## Response
### Success Response (200 OK)
Returns a paginated list of providers with their configuration and connection status:
```json
{
"data": [
{
"type": "providers",
"id": "provider-uuid",
"attributes": {
"provider": "aws",
"uid": "123456789012",
"alias": "Production AWS - US",
"connection": {
"connected": true,
"last_checked_at": "2024-01-20T10:30:00Z"
},
"inserted_at": "2024-01-15T10:00:00Z",
"updated_at": "2024-01-20T10:30:00Z"
},
"relationships": {
"secret": {
"data": {
"type": "provider-secrets",
"id": "secret-uuid"
}
},
"provider_groups": {
"data": []
},
"scans": {
"data": [
{
"type": "scans",
"id": "scan-uuid"
}
]
}
}
}
],
"meta": {
"page": {
"number": 1,
"size": 20,
"total": 1,
"total_pages": 1
}
},
"links": {
"self": "https://api.prowler.com/api/v1/providers?page[number]=1",
"first": "https://api.prowler.com/api/v1/providers?page[number]=1",
"last": "https://api.prowler.com/api/v1/providers?page[number]=1"
}
}
```
### Response Fields
- `id` (UUID) - Unique identifier for the provider
- `provider` (enum) - Type of cloud provider: `aws`, `azure`, `gcp`, `kubernetes`, `m365`, `github`, `oci`
- `uid` (string) - Provider's unique identifier (3-250 characters)
- `alias` (string, nullable) - Human-readable name (3-100 characters)
- `connection` (object, read-only) - Connection status information:
- `connected` (boolean) - Whether provider is connected
- `last_checked_at` (datetime) - Last connection verification time
- `inserted_at` (datetime, read-only) - When provider was created
- `updated_at` (datetime, read-only) - Last modification time