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

> ## Agent Instructions
> For account actions, read https://ohmyho.st/skills/ohmyhost-get-started/SKILL.md and use the authenticated ohmyho.st CLI, local product MCP or supported remote OAuth MCP. Read the current project source binding before choosing GitHub or managed versions. Mintlify search only reads documentation. Preserve the customer’s selected project, environment and authentication provider; keep private application values in the portal or local stdin flow.

# Read auto-recharge and the current payment handoff

> Owner-only. Reads saved consent and gross UTC-month spending; a pending Stripe card setup may be resumed. No charge is initiated by reading. Private Stripe URLs must not be logged.



## OpenAPI

````yaml /openapi.json get /v1/organizations/{organization_id}/billing/recharge
openapi: 3.1.2
info:
  title: ohmyho.st API
  version: 0.0.0
  description: >-
    Public REST API for ohmyho.st hosting, projects, domains, email, credits and
    exports.
servers:
  - url: https://app.ohmyho.st
    description: Production control API
  - url: https://dev.app.ohmyho.st
    description: Development control API
security:
  - BearerAuth: []
paths:
  /v1/organizations/{organization_id}/billing/recharge:
    get:
      summary: Read auto-recharge and the current payment handoff
      description: >-
        Owner-only. Reads saved consent and gross UTC-month spending; a pending
        Stripe card setup may be resumed. No charge is initiated by reading.
        Private Stripe URLs must not be logged.
      operationId: getBillingRecharge
      parameters:
        - $ref: '#/components/parameters/RequestId'
        - name: organization_id
          in: path
          required: true
          schema:
            $ref: '#/components/schemas/Ulid'
      responses:
        '200':
          description: Actual recharge settings; disabled by default.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BillingRecharge'
        '400':
          $ref: '#/components/responses/Problem'
        '401':
          $ref: '#/components/responses/Problem'
        '404':
          $ref: '#/components/responses/ResourceNotFound'
        '429':
          $ref: '#/components/responses/Problem'
        '503':
          $ref: '#/components/responses/Problem'
components:
  parameters:
    RequestId:
      name: X-Request-Id
      in: header
      description: Optional caller-provided correlation identifier.
      required: false
      schema:
        type: string
        minLength: 1
        maxLength: 128
  schemas:
    Ulid:
      type: string
      pattern: ^[0-9A-HJKMNP-TV-Z]{26}$
    BillingRecharge:
      type: object
      additionalProperties: false
      required:
        - organization_id
        - portal_available
        - enabled
        - revision
        - status
        - monthly_limit_minor
        - spent_minor
        - currency
        - amount_minor
        - credits
        - threshold_credits
        - setup_url
        - invoice_url
        - billing_issue
      properties:
        organization_id:
          $ref: '#/components/schemas/Ulid'
        portal_available:
          type: boolean
          description: >-
            An existing customer in this billing account is ready for a hosted
            billing-portal handoff; this does not imply a paid subscription.
        enabled:
          type: boolean
        revision:
          type: integer
          minimum: 0
        status:
          type: string
          enum:
            - 'off'
            - setup_required
            - 'on'
            - payment_required
            - monthly_limit
            - needs_reconciliation
            - tax_required
        monthly_limit_minor:
          type: integer
          minimum: 1000
          maximum: 100000
        spent_minor:
          type: integer
          minimum: 0
        currency:
          type: string
          const: usd
        amount_minor:
          type: integer
          const: 900
        credits:
          type: integer
          const: 1000
        threshold_credits:
          type: integer
          const: 100
        setup_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 8192
        invoice_url:
          type:
            - string
            - 'null'
          format: uri
          maxLength: 8192
        billing_issue:
          $ref: '#/components/schemas/BillingTaxIssue'
    BillingTaxIssue:
      description: Verified issue on an existing Stripe invoice; no new purchase is needed.
      type:
        - object
        - 'null'
      additionalProperties: false
      required:
        - code
        - invoice_id
        - observed_at
        - required_action
      properties:
        code:
          type: string
          enum:
            - billing_tax_location_required
            - billing_tax_calculation_failed
            - billing_tax_configuration_required
        invoice_id:
          type: string
          pattern: ^in_[A-Za-z0-9_]{1,253}$
        observed_at:
          type: string
          format: date-time
        required_action:
          type: string
          enum:
            - open_billing_portal
            - contact_support
    ProblemDetails:
      type: object
      description: RFC 9457 Problem Details extended with stable ohmyhost recovery fields.
      additionalProperties: false
      required:
        - type
        - title
        - status
        - code
        - request_id
        - retryable
        - suggested_action
      properties:
        type:
          type: string
          format: uri-reference
        title:
          type: string
          minLength: 1
        status:
          type: integer
          minimum: 400
          maximum: 599
        detail:
          type: string
        instance:
          type: string
          format: uri-reference
        code:
          type: string
          enum:
            - invalid_request
            - unauthenticated
            - forbidden
            - organization_required
            - resource_not_found
            - idempotency_key_reused
            - project_handle_unavailable
            - project_identity_unavailable
            - deployment_plan_expired
            - deployment_plan_incompatible
            - confirmation_expired
            - confirmation_invalid
            - etag_mismatch
            - promotion_source_stale
            - promotion_target_stale
            - promotion_invalid_target
            - mail_domain_conflict
            - mail_domain_required
            - mail_capacity_unavailable
            - storage_jurisdiction_conflict
            - shared_data_requires_promotion
            - production_deployment_required
            - framework_conversion_required
            - repository_configuration_missing
            - migration_filename_noncanonical
            - environment_secret_mutation_blocked
            - workers_runtime_incompatible
            - project_handle_invalid
            - project_handle_taken
            - project_handle_unchanged
            - project_rename_blocked
            - payload_too_large
            - rate_limited
            - insufficient_organization_credits
            - paid_plan_required
            - project_budget_exceeded
            - compute_performance_paid_required
            - compute_performance_unavailable
            - database_write_pending
            - database_access_limit
            - compute_change_pending
            - compute_change_conflict
            - billing_purchase_conflict
            - billing_recharge_conflict
            - github_connection_required
            - github_connection_revoked
            - repository_not_installed
            - cloudflare_zone_not_bound
            - cloudflare_authorization_closed
            - project_notes_conflict
            - project_export_not_ready
            - powered_by_flag_required
            - interactive_login_required
            - api_key_creation_uncertain
            - api_key_permissions_unavailable
            - reconciliation_exhausted
            - service_unavailable
            - source_commit_not_found
            - domain_hostname_taken
            - domain_dns_conflict
            - data_change_blocked
            - data_change_in_progress
            - data_change_not_applicable
            - rollback_target_data_changed
            - project_domain_delete_required
        request_id:
          type: string
          minLength: 1
          maxLength: 128
        retryable:
          type: boolean
        retry_after_seconds:
          type: integer
          minimum: 1
          maximum: 86400
          description: >-
            Optional machine-readable retry delay for a rate limit, matching
            Retry-After.
        suggested_action:
          type: string
          minLength: 1
  responses:
    Problem:
      description: The request failed.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
    ResourceNotFound:
      description: >-
        The resource does not exist or is not visible to the authenticated
        principal.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/problem+json:
          schema:
            $ref: '#/components/schemas/ProblemDetails'
          examples:
            resourceNotFound:
              value:
                type: https://docs.ohmyho.st/errors/resource-not-found
                title: Resource not found
                status: 404
                code: resource_not_found
                request_id: req_01J00000000000000000000000
                retryable: false
                suggested_action: Check the resource identifier and your access scope.
  headers:
    XRequestId:
      description: Correlates the request with operations, events, logs, and audit records.
      required: true
      schema:
        type: string
        minLength: 1
        maxLength: 128
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        WorkOS access JWT or a user-owned WorkOS API key. User keys are bound to
        one organization and restricted to their enabled product permissions.
        Session-only onboarding and session revocation require an interactive
        access JWT. No cookie session is assumed.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.