Skip to main content
Ctrl+K

Safir

  • User guide
  • API reference
  • Change log
  • Development guide
  • GitHub
  • User guide
  • API reference
  • Change log
  • Development guide
  • GitHub

Section Navigation

Tutorials

  • Creating an app from the template
  • Manually creating an app from the template

Guides

  • Logging in Safir applications
  • Using the HTTPX client
  • Using the database API
    • Initializing a database
    • Using a database session in request handlers
    • Creating a database session
    • Handling datetimes in database tables
    • Retrying database transactions
    • Paginated queries
    • Testing applications that use a database
    • Managing schemas
  • Using the arq Redis queue client and dependency
  • Requiring Gafaelfawr authentication
  • Handling X-Forwarded-* headers
  • IVOA protocol support
  • Integrating with Kafka
    • Kafka connection settings
    • Managing schema registry schemas with Pydantic Models
    • FastStream helpers
    • Testing with Kafka
  • Using the Kubernetes API
  • Application metrics
  • Utilities for Pydantic models
  • Storing Pydantic objects in Redis
  • Using the Google Cloud Storage API
  • Handling HTTP errors with FastAPI
  • datetime handling
  • Starting an app with Uvicorn for testing
  • Sending messages and alerts to a Slack webhook
  • Building GitHub integrations
    • Creating clients with GitHubAppClientFactory
    • Handling GitHub webhooks
    • GitHub API resource models
    • Models for GitHub webhook payloads
  • Using Click for command-line interfaces
  • Using the asyncio multiple-reader queue
  • Building UWS applications
    • Creating a new UWS service
    • Define job parameter models
    • Defining service inputs
    • Write the backend worker
    • Testing UWS applications
  • Integrating Sentry
  • Using test data
  • Parsing HTTP headers
  • User guide

User guide#

Tutorials

  • Creating an app from the template
  • Manually creating an app from the template

Guides

  • Logging in Safir applications
  • Using the HTTPX client
  • Using the database API
  • Using the arq Redis queue client and dependency
  • Requiring Gafaelfawr authentication
  • Handling X-Forwarded-* headers
  • IVOA protocol support
  • Integrating with Kafka
  • Using the Kubernetes API
  • Application metrics
  • Utilities for Pydantic models
  • Storing Pydantic objects in Redis
  • Using the Google Cloud Storage API
  • Handling HTTP errors with FastAPI
  • datetime handling
  • Starting an app with Uvicorn for testing
  • Sending messages and alerts to a Slack webhook
  • Building GitHub integrations
  • Using Click for command-line interfaces
  • Using the asyncio multiple-reader queue
  • Building UWS applications
  • Integrating Sentry
  • Using test data
  • Parsing HTTP headers

This page was last modified on 2026-04-01.

https://safir.lsst.io/user-guide/index.html

previous

Safir

next

Creating an app from the template

Help improve this page

Found a mistake or something missing? Edit this page on GitHub.

This page was last modified on 2026-04-01.

Rubin Observatory

  • For scientists
  • News

Documentation

data.lsst.cloud

Community forum

© Copyright 2020-2024 Association of Universities for Research in Astronomy, Inc. (AURA).

The U.S. National Science Foundation (NSF) and the U.S. Department of Energy (DOE) Office of Science will support Rubin Observatory in its operations phase to carry out the Legacy Survey of Space and Time. They will also provide support for scientific research with the data. During operations, NSF funding is managed by the Association of Universities for Research in Astronomy (AURA) under a cooperative agreement with NSF, and DOE funding is managed by SLAC National Accelerator Laboratory (SLAC), under contract by DOE. Rubin Observatory is operated by NSF NOIRLab and SLAC.

NSF is an independent federal agency created by Congress in 1950 to promote the progress of science. NSF supports basic research and people to create knowledge that transforms the future.

The DOE Office of Science is the single largest supporter of basic research in the physical sciences in the United States and is working to address some of the most pressing challenges of our time.

Logos of the Vera C. Rubin Observatory, NSF, US DOE, NOIRLab, AURA, and SLAC.