openapi: 3.1.0 info: title: Cribl As Code API Credentials Edge Fleets API description: The Cribl As Code API enables developers to manage Cribl configurations programmatically using infrastructure-as-code principles. The management plane API provides endpoints for administrative tasks in Cribl Cloud including managing organizations, workspaces, and API credentials. Developers can use this API alongside SDKs for Python, Go, and TypeScript, or through Terraform providers, to onboard sources, build and maintain pipelines, and standardize workflows at scale. The management plane supports creating and configuring Cribl Cloud workspaces, managing API credentials, and controlling access to organizational resources. version: '1.0' contact: name: Cribl Support url: https://cribl.io/support/ termsOfService: https://cribl.io/terms-of-service/ servers: - url: https://gateway.cribl.cloud description: Cribl Cloud Management Plane security: - bearerAuth: [] tags: - name: Edge Fleets description: Manage edge fleets that organize groups of edge nodes deployed on endpoints for local data collection and processing. paths: /master/groups: get: operationId: listEdgeFleets summary: List all edge fleets description: Retrieves all edge fleets configured in the deployment. Edge fleets organize edge nodes and allow deploying shared configurations to groups of endpoint agents. tags: - Edge Fleets parameters: - name: product in: query description: Filter by product type to show only edge fleets schema: type: string enum: - edge responses: '200': description: Successfully retrieved edge fleets content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/EdgeFleet' count: type: integer description: Total number of edge fleets '401': description: Unauthorized post: operationId: createEdgeFleet summary: Create a new edge fleet description: Creates a new edge fleet for organizing and managing a group of edge nodes deployed on endpoint systems. tags: - Edge Fleets requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/EdgeFleet' responses: '200': description: Edge fleet created successfully content: application/json: schema: $ref: '#/components/schemas/EdgeFleet' '400': description: Invalid fleet configuration '401': description: Unauthorized /master/groups/{id}: get: operationId: getEdgeFleet summary: Get an edge fleet by ID description: Retrieves the configuration and status of a specific edge fleet including its node count and deployment state. tags: - Edge Fleets parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Successfully retrieved edge fleet content: application/json: schema: $ref: '#/components/schemas/EdgeFleet' '401': description: Unauthorized '404': description: Edge fleet not found patch: operationId: updateEdgeFleet summary: Update an edge fleet description: Updates the configuration of an existing edge fleet including its name, description, and deployment settings. tags: - Edge Fleets parameters: - $ref: '#/components/parameters/resourceId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/EdgeFleet' responses: '200': description: Edge fleet updated successfully content: application/json: schema: $ref: '#/components/schemas/EdgeFleet' '400': description: Invalid fleet configuration '401': description: Unauthorized '404': description: Edge fleet not found delete: operationId: deleteEdgeFleet summary: Delete an edge fleet description: Deletes an edge fleet by its unique ID. Connected edge nodes will be disconnected. tags: - Edge Fleets parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Edge fleet deleted successfully '401': description: Unauthorized '404': description: Edge fleet not found /master/groups/{id}/deploy: post: operationId: deployEdgeFleet summary: Deploy configuration to an edge fleet description: Deploys the current configuration to all edge nodes in the specified fleet, pushing updated sources, pipelines, and routes to endpoints. tags: - Edge Fleets parameters: - $ref: '#/components/parameters/resourceId' responses: '200': description: Deployment initiated successfully '401': description: Unauthorized '404': description: Edge fleet not found components: schemas: EdgeFleet: type: object properties: id: type: string description: Unique identifier for the edge fleet name: type: string description: Display name for the edge fleet description: type: string description: A human-readable description isFleet: type: boolean description: Indicates this is an edge fleet workerCount: type: integer description: Number of connected edge nodes configVersion: type: string description: The current deployed configuration version tags: type: object description: Key-value tags for organizing fleets parameters: resourceId: name: id in: path required: true description: The unique identifier of the resource schema: type: string securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Bearer token obtained via OAuth 2.0 client credentials grant from https://login.cribl.cloud/oauth/token. Tokens expire after 24 hours (86400 seconds). oauth2: type: oauth2 description: OAuth 2.0 client credentials flow for Cribl Cloud management plane authentication. flows: clientCredentials: tokenUrl: https://login.cribl.cloud/oauth/token scopes: {} externalDocs: description: Cribl As Code Documentation url: https://docs.cribl.io/cribl-as-code/api/