Freestyle Observability API

APIs for observability.

Documentation

📖
Documentation
https://docs.freestyle.sh/v2/vms/about
📖
Documentation
https://docs.freestyle.sh/v2/vms/lifecycle
📖
Documentation
https://docs.freestyle.sh/v2/vms/configuration
📖
Documentation
https://docs.freestyle.sh/v2/vms/templates-snapshots
📖
Documentation
https://docs.freestyle.sh/v2/vms/ssh-access
📖
Documentation
https://docs.freestyle.sh/v2/git/about
📖
Documentation
https://docs.freestyle.sh/v2/git/repos
📖
Documentation
https://docs.freestyle.sh/v2/git/search
📖
Documentation
https://docs.freestyle.sh/v2/git/hooks
📖
Documentation
https://docs.freestyle.sh/v2/git/github-sync
📖
Documentation
https://docs.freestyle.sh/v2/git/advanced/database-api
📖
Documentation
https://docs.freestyle.sh/v2/about
📖
Documentation
https://docs.freestyle.sh/v2/domains
📖
Documentation
https://docs.freestyle.sh/v2/domains/deploy-to-custom-domain
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/about
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/code-playground
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/egress
📖
Documentation
https://docs.freestyle.sh/v2/serverless/runs/errors
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/about
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/configuration
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/cron-jobs
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/nextjs
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/vite
📖
Documentation
https://docs.freestyle.sh/v2/serverless/deployments/guides/static

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

freestyle-sh-observability-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Freestyle Cron Auth Observability API
  version: 0.1.0
  description: Schedule recurring serverless runs — create/update/delete cron schedules and inspect executions, success rate, and metrics timeline.
  contact:
    name: Ben
    email: ben@freestyle.sh
  license:
    name: Closed Source
servers:
- url: https://api.freestyle.sh
  description: Production
security:
- bearerAuth: []
tags:
- name: Observability
  description: APIs for observability.
paths:
  /observability/v1/logs:
    get:
      tags:
      - Observability
      summary: Logs
      description: Get logs for a deployment, domain, VM, or background request
      operationId: handle_get_logs
      parameters:
      - name: deploymentId
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: requestId
        in: query
        required: false
        schema:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/RequestId'
      - name: buildId
        in: query
        required: false
        schema:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/BuildId'
      - name: instanceId
        in: query
        required: false
        schema:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/VmInstanceId'
      - name: domain
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: vmId
        in: query
        required: false
        schema:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/VmId'
      - name: runId
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: vmService
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: pageToken
        in: query
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: pageSize
        in: query
        required: false
        schema:
          type:
          - integer
          - 'null'
          format: int32
      - name: startTime
        in: query
        description: Start time in RFC3339 format (e.g., "2024-01-01T00:00:00Z"). Defaults to 24 hours ago if not specified.
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: endTime
        in: query
        description: End time in RFC3339 format (e.g., "2024-01-02T00:00:00Z"). Defaults to now if not specified.
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: search
        in: query
        description: Full-text search filter — case-insensitive substring match on log message body.
        required: false
        schema:
          type:
          - string
          - 'null'
      - name: resourceType
        in: query
        description: 'Filter logs by resource type: "deployment" or "vm". Only applies to account-wide queries.'
        required: false
        schema:
          type:
          - string
          - 'null'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FreestyleGetLogsResponse'
components:
  schemas:
    BuildId:
      type: string
      description: Branded build ID in the format `bld-<20 lowercase alphanumeric chars>`.
    VmInstanceId:
      type: string
    VmId:
      type: string
      description: 'VM ID — always 20 alphanumeric lowercase characters.

        New IDs are fully random. Legacy short IDs are right-padded with ''0'' on parse.'
    RequestId:
      type: string
      description: 'Branded request identifier — `ri-<20 lowercase alphanumeric chars>` for newly

        minted IDs. The wrapped string is otherwise opaque, so legacy UUID-formatted

        IDs (from in-flight requests during rollout) round-trip unchanged.'
    FreestyleGetLogsResponse:
      type: object
      required:
      - logs
      properties:
        logs:
          type: array
          items:
            $ref: '#/components/schemas/FreestyleLogResponseObject'
        nextPageToken:
          type:
          - string
          - 'null'
    FreestyleLogResponseObject:
      type: object
      required:
      - message
      - timestamp
      properties:
        message:
          type: string
        timestamp:
          type: string
        source:
          type:
          - string
          - 'null'
        resourceType:
          type:
          - string
          - 'null'
        origin:
          type:
          - string
          - 'null'
        resourceId:
          type:
          - string
          - 'null'
        instanceId:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/VmInstanceId'
        level:
          type:
          - string
          - 'null'
        vmService:
          type:
          - string
          - 'null'
        buildId:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/BuildId'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer