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

# List implemented API operations

> Retrieve the implemented operation identifiers exposed by the main Guile API.

The response contains one boolean field per operation ID. A value of `true`
indicates the operation is implemented and available in this API release.



## OpenAPI

````yaml /api-reference/Metadata/openapi.yaml get /apis
openapi: 3.0.0
info:
  title: Metadata
  version: 0.1.0
  contact:
    name: Guile Engineering
    url: https://www.guile.app
    email: engineering@guile.app
  license:
    name: MIT
    url: https://opensource.org/license/mit
  description: |-
    The Metadata API provides operations for discovering implemented operations
    exposed by the main Guile API.
servers:
  - url: https://api.guile.app
    variables: {}
  - url: https://guile.fly.dev
    variables: {}
security: []
tags:
  - name: Metadata
    description: Platform metadata callers need at startup
paths:
  /apis:
    get:
      tags:
        - Metadata
      summary: List implemented API operations
      description: >-
        Retrieve the implemented operation identifiers exposed by the main Guile
        API.


        The response contains one boolean field per operation ID. A value of
        `true`

        indicates the operation is implemented and available in this API
        release.
      operationId: listImplementedApiOperations
      parameters: []
      responses:
        '200':
          description: |-
            Ok.
            The operation succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/implementedApiOperations'
        '429':
          description: >-
            Too Many Requests.

            The client has sent too many requests in a given amount of time.



            This problem response may have one of the following `type` values:

            *
            [https://docs.guile.app/problems/tooManyRequests](https://docs.guile.app/problems/tooManyRequests)
          headers:
            Retry-After:
              required: true
              description: The number of seconds to wait before retrying the request.
              schema:
                type: integer
                format: uint32
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/apiProblem'
components:
  schemas:
    implementedApiOperations:
      type: object
      required:
        - acceptInvitation
        - addBusinessFinancialAccount
        - addBusinessPayoutCard
        - addClientNote
        - addPaymentMethod
        - approveBarberReview
        - approvePhoto
        - approveRefundRequest
        - assignBarberPortfolioPhoto
        - assignBarberProfilePhoto
        - assignMyProfilePhoto
        - assignServicePhoto
        - assignServiceToBarber
        - assignShopPortfolioPhoto
        - assignShopProfilePhoto
        - authorizeAppointmentPayment
        - calculateBarberFees
        - calculateCustomerFees
        - cancelBarberAppointment
        - cancelMyAppointment
        - cancelPayout
        - captureAppointmentPayment
        - captureContactlessPayment
        - checkBookingProfileSlugAvailability
        - confirmBarberAppointmentRequest
        - createAppointment
        - createAppointmentExternalPayment
        - createAuthenticationChallenge
        - createBarberAppointment
        - createBarberClient
        - createBarberProfile
        - createBarberSchedule
        - createBarberScheduleOverride
        - createContactlessPayment
        - createInstantPayout
        - createPlaidLinkToken
        - createRecurringAppointment
        - createReview
        - createReviewTag
        - createServiceCategory
        - createShopProfile
        - createShopService
        - createTerminalConnectionToken
        - deleteBarberSchedule
        - deleteBarberScheduleOverride
        - deleteBarberService
        - deleteBarberWeekSpecificSchedule
        - deleteClientNote
        - deleteMyAccount
        - deletePasskey
        - deletePhoto
        - deleteRecurringAppointment
        - deleteReview
        - deleteReviewTag
        - deleteTerminal
        - declineBarberAppointmentRequest
        - denyRefundRequest
        - dismissMyAppointmentReviewPrompt
        - exchangePlaidPublicToken
        - exchangeRefreshToken
        - getAppointment
        - getBarberClient
        - getBarberDailySummaries
        - getBarberProfile
        - getBarberProfilePhoto
        - getBarberReviewSummary
        - getBarberScheduleOverride
        - getBarberSettings
        - getBarberWeeklySchedule
        - getBarberWeeklyWorkingHours
        - getBookingProfile
        - getBusinessBalances
        - getBusinessPayoutPreferences
        - getBusinessRefundPolicy
        - getBusinessRegistration
        - getClientNote
        - getContactlessPayment
        - getInvitation
        - getMyAppointment
        - getMyProfile
        - getPaymentMethod
        - getMySettings
        - getPasskeyRegistrationOptions
        - getPayout
        - getPhoto
        - getRecurringAppointment
        - getRefundRequest
        - getReview
        - getService
        - getShopProfilePhoto
        - getSmartGroup
        - getTerminal
        - importBarberClients
        - issueAnonymousToken
        - listAppointmentOpenings
        - listAppointmentPayments
        - listAdminPhotos
        - listAuthenticationChallengeMethods
        - listBarberAppointments
        - listBarberClients
        - listBarberPortfolioPhotos
        - listBarberReviews
        - listBarberScheduleOverrides
        - listBarberSchedules
        - listBarberServices
        - listBarberWeekSpecificSchedules
        - listBusinessFinancialAccounts
        - listBusinessPayoutCards
        - listClientNotes
        - listContactlessPayments
        - listImplementedApiOperations
        - listLocationAppointments
        - listLocationInvitations
        - listMyAppointments
        - listMyPaymentMethods
        - listMyPayments
        - listPasskeyAlgorithms
        - listPasskeys
        - listPayouts
        - listPhotos
        - listPlaidAccounts
        - listRecurringAppointments
        - listRefundRequests
        - listReviews
        - listReviewTags
        - listServiceCategories
        - listServicePhotos
        - listShopPortfolioPhotos
        - listShopServices
        - listSmartGroupClients
        - listSmartGroups
        - listTerminals
        - logoutCurrentUser
        - patchAppointment
        - patchBarberClient
        - patchBarberProfile
        - patchBarberSchedule
        - patchBarberScheduleOverride
        - patchBarberService
        - patchBarberSettings
        - patchBarberPortfolioPhoto
        - patchBusinessFinancialAccount
        - patchClientNote
        - patchMyProfile
        - patchMySettings
        - patchPaymentMethod
        - patchRecurringAppointment
        - patchReview
        - patchReviewTag
        - patchService
        - patchSmartGroupRules
        - putBarberWeekSpecificSchedule
        - putBusinessPayoutPreferences
        - refundAppointmentPayment
        - registerBusiness
        - registerPasskey
        - registerTerminal
        - rejectBarberReview
        - rejectPhoto
        - removeBarberClient
        - removeBarberPortfolioPhoto
        - removeBarberProfilePhoto
        - removeMyProfilePhoto
        - removeBusinessFinancialAccount
        - removeBusinessPayoutCard
        - removePaymentMethod
        - removeServicePhoto
        - removeShopPortfolioPhoto
        - removeShopProfilePhoto
        - requestRefund
        - revokeInvitation
        - revokeTokens
        - setBarberDefaultSchedule
        - softDeleteBarber
        - uploadPhoto
        - verifyAuthentication
      properties:
        acceptInvitation:
          type: boolean
          description: Whether acceptInvitation is implemented and available.
        addBusinessFinancialAccount:
          type: boolean
          description: Whether addBusinessFinancialAccount is implemented and available.
        addBusinessPayoutCard:
          type: boolean
          description: Whether addBusinessPayoutCard is implemented and available.
        addClientNote:
          type: boolean
          description: Whether addClientNote is implemented and available.
        addPaymentMethod:
          type: boolean
          description: Whether addPaymentMethod is implemented and available.
        approveBarberReview:
          type: boolean
          description: Whether approveBarberReview is implemented and available.
        approvePhoto:
          type: boolean
          description: Whether approvePhoto is implemented and available.
        approveRefundRequest:
          type: boolean
          description: Whether approveRefundRequest is implemented and available.
        assignBarberPortfolioPhoto:
          type: boolean
          description: Whether assignBarberPortfolioPhoto is implemented and available.
        assignBarberProfilePhoto:
          type: boolean
          description: Whether assignBarberProfilePhoto is implemented and available.
        assignMyProfilePhoto:
          type: boolean
          description: Whether assignMyProfilePhoto is implemented and available.
        assignServicePhoto:
          type: boolean
          description: Whether assignServicePhoto is implemented and available.
        assignServiceToBarber:
          type: boolean
          description: Whether assignServiceToBarber is implemented and available.
        assignShopPortfolioPhoto:
          type: boolean
          description: Whether assignShopPortfolioPhoto is implemented and available.
        assignShopProfilePhoto:
          type: boolean
          description: Whether assignShopProfilePhoto is implemented and available.
        authorizeAppointmentPayment:
          type: boolean
          description: Whether authorizeAppointmentPayment is implemented and available.
        calculateBarberFees:
          type: boolean
          description: Whether calculateBarberFees is implemented and available.
        calculateCustomerFees:
          type: boolean
          description: Whether calculateCustomerFees is implemented and available.
        cancelBarberAppointment:
          type: boolean
          description: Whether cancelBarberAppointment is implemented and available.
        cancelMyAppointment:
          type: boolean
          description: Whether cancelMyAppointment is implemented and available.
        cancelPayout:
          type: boolean
          description: Whether cancelPayout is implemented and available.
        captureAppointmentPayment:
          type: boolean
          description: Whether captureAppointmentPayment is implemented and available.
        captureContactlessPayment:
          type: boolean
          description: Whether captureContactlessPayment is implemented and available.
        checkBookingProfileSlugAvailability:
          type: boolean
          description: >-
            Whether checkBookingProfileSlugAvailability is implemented and
            available.
        confirmBarberAppointmentRequest:
          type: boolean
          description: >-
            Whether confirmBarberAppointmentRequest is implemented and
            available.
        createAppointment:
          type: boolean
          description: Whether createAppointment is implemented and available.
        createAppointmentExternalPayment:
          type: boolean
          description: >-
            Whether createAppointmentExternalPayment is implemented and
            available.
        createAuthenticationChallenge:
          type: boolean
          description: Whether createAuthenticationChallenge is implemented and available.
        createBarberAppointment:
          type: boolean
          description: Whether createBarberAppointment is implemented and available.
        createBarberClient:
          type: boolean
          description: Whether createBarberClient is implemented and available.
        createBarberProfile:
          type: boolean
          description: Whether createBarberProfile is implemented and available.
        createBarberSchedule:
          type: boolean
          description: Whether createBarberSchedule is implemented and available.
        createBarberScheduleOverride:
          type: boolean
          description: Whether createBarberScheduleOverride is implemented and available.
        createContactlessPayment:
          type: boolean
          description: Whether createContactlessPayment is implemented and available.
        createInstantPayout:
          type: boolean
          description: Whether createInstantPayout is implemented and available.
        createPlaidLinkToken:
          type: boolean
          description: Whether createPlaidLinkToken is implemented and available.
        createRecurringAppointment:
          type: boolean
          description: Whether createRecurringAppointment is implemented and available.
        createReview:
          type: boolean
          description: Whether createReview is implemented and available.
        createReviewTag:
          type: boolean
          description: Whether createReviewTag is implemented and available.
        createServiceCategory:
          type: boolean
          description: Whether createServiceCategory is implemented and available.
        createShopProfile:
          type: boolean
          description: Whether createShopProfile is implemented and available.
        createShopService:
          type: boolean
          description: Whether createShopService is implemented and available.
        createTerminalConnectionToken:
          type: boolean
          description: Whether createTerminalConnectionToken is implemented and available.
        deleteBarberSchedule:
          type: boolean
          description: Whether deleteBarberSchedule is implemented and available.
        deleteBarberScheduleOverride:
          type: boolean
          description: Whether deleteBarberScheduleOverride is implemented and available.
        deleteBarberService:
          type: boolean
          description: Whether deleteBarberService is implemented and available.
        deleteBarberWeekSpecificSchedule:
          type: boolean
          description: >-
            Whether deleteBarberWeekSpecificSchedule is implemented and
            available.
        deleteClientNote:
          type: boolean
          description: Whether deleteClientNote is implemented and available.
        deleteMyAccount:
          type: boolean
          description: Whether deleteMyAccount is implemented and available.
        deletePasskey:
          type: boolean
          description: Whether deletePasskey is implemented and available.
        deletePhoto:
          type: boolean
          description: Whether deletePhoto is implemented and available.
        deleteRecurringAppointment:
          type: boolean
          description: Whether deleteRecurringAppointment is implemented and available.
        deleteReview:
          type: boolean
          description: Whether deleteReview is implemented and available.
        deleteReviewTag:
          type: boolean
          description: Whether deleteReviewTag is implemented and available.
        deleteTerminal:
          type: boolean
          description: Whether deleteTerminal is implemented and available.
        declineBarberAppointmentRequest:
          type: boolean
          description: >-
            Whether declineBarberAppointmentRequest is implemented and
            available.
        denyRefundRequest:
          type: boolean
          description: Whether denyRefundRequest is implemented and available.
        dismissMyAppointmentReviewPrompt:
          type: boolean
          description: >-
            Whether dismissMyAppointmentReviewPrompt is implemented and
            available.
        exchangePlaidPublicToken:
          type: boolean
          description: Whether exchangePlaidPublicToken is implemented and available.
        exchangeRefreshToken:
          type: boolean
          description: Whether exchangeRefreshToken is implemented and available.
        getAppointment:
          type: boolean
          description: Whether getAppointment is implemented and available.
        getAuthenticatedContext:
          type: boolean
          description: Whether getAuthenticatedContext is implemented and available.
        getBarberAppointment:
          type: boolean
          description: Whether getBarberAppointment is implemented and available.
        getBarberBookingHours:
          type: boolean
          description: Whether getBarberBookingHours is implemented and available.
        getBarberClient:
          type: boolean
          description: Whether getBarberClient is implemented and available.
        getBarberDailySummaries:
          type: boolean
          description: Whether getBarberDailySummaries is implemented and available.
        getBarberProfile:
          type: boolean
          description: Whether getBarberProfile is implemented and available.
        getBarberProfilePhoto:
          type: boolean
          description: Whether getBarberProfilePhoto is implemented and available.
        getBarberReviewSummary:
          type: boolean
          description: Whether getBarberReviewSummary is implemented and available.
        getBarberScheduleOverride:
          type: boolean
          description: Whether getBarberScheduleOverride is implemented and available.
        getBarberSettings:
          type: boolean
          description: Whether getBarberSettings is implemented and available.
        getBarberWeeklySchedule:
          type: boolean
          description: Whether getBarberWeeklySchedule is implemented and available.
        getBarberWeeklyWorkingHours:
          type: boolean
          description: Whether getBarberWeeklyWorkingHours is implemented and available.
        getBookingProfile:
          type: boolean
          description: Whether getBookingProfile is implemented and available.
        getBusinessBalances:
          type: boolean
          description: Whether getBusinessBalances is implemented and available.
        getBusinessPayoutPreferences:
          type: boolean
          description: Whether getBusinessPayoutPreferences is implemented and available.
        getBusinessRefundPolicy:
          type: boolean
          description: Whether getBusinessRefundPolicy is implemented and available.
        getBusinessRegistration:
          type: boolean
          description: Whether getBusinessRegistration is implemented and available.
        getClientNote:
          type: boolean
          description: Whether getClientNote is implemented and available.
        getContactlessPayment:
          type: boolean
          description: Whether getContactlessPayment is implemented and available.
        getInvitation:
          type: boolean
          description: Whether getInvitation is implemented and available.
        getMyAppointment:
          type: boolean
          description: Whether getMyAppointment is implemented and available.
        getMyProfile:
          type: boolean
          description: Whether getMyProfile is implemented and available.
        getPaymentMethod:
          type: boolean
          description: Whether getPaymentMethod is implemented and available.
        getMySettings:
          type: boolean
          description: Whether getMySettings is implemented and available.
        getPasskeyRegistrationOptions:
          type: boolean
          description: Whether getPasskeyRegistrationOptions is implemented and available.
        getPayout:
          type: boolean
          description: Whether getPayout is implemented and available.
        getPhoto:
          type: boolean
          description: Whether getPhoto is implemented and available.
        getRecurringAppointment:
          type: boolean
          description: Whether getRecurringAppointment is implemented and available.
        getRefundRequest:
          type: boolean
          description: Whether getRefundRequest is implemented and available.
        getReview:
          type: boolean
          description: Whether getReview is implemented and available.
        getService:
          type: boolean
          description: Whether getService is implemented and available.
        getShopProfilePhoto:
          type: boolean
          description: Whether getShopProfilePhoto is implemented and available.
        getSmartGroup:
          type: boolean
          description: Whether getSmartGroup is implemented and available.
        getTerminal:
          type: boolean
          description: Whether getTerminal is implemented and available.
        importBarberClients:
          type: boolean
          description: Whether importBarberClients is implemented and available.
        issueAnonymousToken:
          type: boolean
          description: Whether issueAnonymousToken is implemented and available.
        listAppointmentOpenings:
          type: boolean
          description: Whether listAppointmentOpenings is implemented and available.
        listAppointmentPayments:
          type: boolean
          description: Whether listAppointmentPayments is implemented and available.
        listAdminPhotos:
          type: boolean
          description: Whether listAdminPhotos is implemented and available.
        listAuthenticationChallengeMethods:
          type: boolean
          description: >-
            Whether listAuthenticationChallengeMethods is implemented and
            available.
        listBarberAppointments:
          type: boolean
          description: Whether listBarberAppointments is implemented and available.
        listBarberClients:
          type: boolean
          description: Whether listBarberClients is implemented and available.
        listBarberPortfolioPhotos:
          type: boolean
          description: Whether listBarberPortfolioPhotos is implemented and available.
        listBarberReviews:
          type: boolean
          description: Whether listBarberReviews is implemented and available.
        listBarberScheduleOverrides:
          type: boolean
          description: Whether listBarberScheduleOverrides is implemented and available.
        listBarberSchedules:
          type: boolean
          description: Whether listBarberSchedules is implemented and available.
        listBarberServices:
          type: boolean
          description: Whether listBarberServices is implemented and available.
        listBarberWeekSpecificSchedules:
          type: boolean
          description: >-
            Whether listBarberWeekSpecificSchedules is implemented and
            available.
        listBusinessFinancialAccounts:
          type: boolean
          description: Whether listBusinessFinancialAccounts is implemented and available.
        listBusinessPayoutCards:
          type: boolean
          description: Whether listBusinessPayoutCards is implemented and available.
        listClientNotes:
          type: boolean
          description: Whether listClientNotes is implemented and available.
        listClientAppointments:
          type: boolean
          description: Whether listClientAppointments is implemented and available.
        listContactlessPayments:
          type: boolean
          description: Whether listContactlessPayments is implemented and available.
        listImplementedApiOperations:
          type: boolean
          description: Whether listImplementedApiOperations is implemented and available.
        listLocationAppointments:
          type: boolean
          description: Whether listLocationAppointments is implemented and available.
        listLocationInvitations:
          type: boolean
          description: Whether listLocationInvitations is implemented and available.
        listMyAppointments:
          type: boolean
          description: Whether listMyAppointments is implemented and available.
        listMyPaymentMethods:
          type: boolean
          description: Whether listMyPaymentMethods is implemented and available.
        listMyPayments:
          type: boolean
          description: Whether listMyPayments is implemented and available.
        listPasskeyAlgorithms:
          type: boolean
          description: Whether listPasskeyAlgorithms is implemented and available.
        listPasskeys:
          type: boolean
          description: Whether listPasskeys is implemented and available.
        listPayouts:
          type: boolean
          description: Whether listPayouts is implemented and available.
        listPayoutPages:
          type: boolean
          description: Whether listPayoutPages is implemented and available.
        listPhotos:
          type: boolean
          description: Whether listPhotos is implemented and available.
        listPlaidAccounts:
          type: boolean
          description: Whether listPlaidAccounts is implemented and available.
        listRecurringAppointments:
          type: boolean
          description: Whether listRecurringAppointments is implemented and available.
        listRefundRequests:
          type: boolean
          description: Whether listRefundRequests is implemented and available.
        listReviews:
          type: boolean
          description: Whether listReviews is implemented and available.
        listReviewTags:
          type: boolean
          description: Whether listReviewTags is implemented and available.
        listServiceCategories:
          type: boolean
          description: Whether listServiceCategories is implemented and available.
        listServicePhotos:
          type: boolean
          description: Whether listServicePhotos is implemented and available.
        listShopPortfolioPhotos:
          type: boolean
          description: Whether listShopPortfolioPhotos is implemented and available.
        listShopServices:
          type: boolean
          description: Whether listShopServices is implemented and available.
        listSmartGroupClients:
          type: boolean
          description: Whether listSmartGroupClients is implemented and available.
        listSmartGroups:
          type: boolean
          description: Whether listSmartGroups is implemented and available.
        listTerminals:
          type: boolean
          description: Whether listTerminals is implemented and available.
        logoutCurrentUser:
          type: boolean
          description: Whether logoutCurrentUser is implemented and available.
        patchAppointment:
          type: boolean
          description: Whether patchAppointment is implemented and available.
        patchBarberClient:
          type: boolean
          description: Whether patchBarberClient is implemented and available.
        patchBarberProfile:
          type: boolean
          description: Whether patchBarberProfile is implemented and available.
        patchBarberSchedule:
          type: boolean
          description: Whether patchBarberSchedule is implemented and available.
        patchBarberScheduleOverride:
          type: boolean
          description: Whether patchBarberScheduleOverride is implemented and available.
        patchBarberService:
          type: boolean
          description: Whether patchBarberService is implemented and available.
        patchBarberSettings:
          type: boolean
          description: Whether patchBarberSettings is implemented and available.
        patchBarberPortfolioPhoto:
          type: boolean
          description: Whether patchBarberPortfolioPhoto is implemented and available.
        patchBusinessFinancialAccount:
          type: boolean
          description: Whether patchBusinessFinancialAccount is implemented and available.
        patchClientNote:
          type: boolean
          description: Whether patchClientNote is implemented and available.
        patchMyProfile:
          type: boolean
          description: Whether patchMyProfile is implemented and available.
        patchMySettings:
          type: boolean
          description: Whether patchMySettings is implemented and available.
        patchPaymentMethod:
          type: boolean
          description: Whether patchPaymentMethod is implemented and available.
        patchRecurringAppointment:
          type: boolean
          description: Whether patchRecurringAppointment is implemented and available.
        patchReview:
          type: boolean
          description: Whether patchReview is implemented and available.
        patchReviewTag:
          type: boolean
          description: Whether patchReviewTag is implemented and available.
        patchService:
          type: boolean
          description: Whether patchService is implemented and available.
        patchSmartGroupRules:
          type: boolean
          description: Whether patchSmartGroupRules is implemented and available.
        putBarberWeekSpecificSchedule:
          type: boolean
          description: Whether putBarberWeekSpecificSchedule is implemented and available.
        putBusinessPayoutPreferences:
          type: boolean
          description: Whether putBusinessPayoutPreferences is implemented and available.
        refundAppointmentPayment:
          type: boolean
          description: Whether refundAppointmentPayment is implemented and available.
        registerBusiness:
          type: boolean
          description: Whether registerBusiness is implemented and available.
        registerPasskey:
          type: boolean
          description: Whether registerPasskey is implemented and available.
        registerTerminal:
          type: boolean
          description: Whether registerTerminal is implemented and available.
        rejectBarberReview:
          type: boolean
          description: Whether rejectBarberReview is implemented and available.
        rejectPhoto:
          type: boolean
          description: Whether rejectPhoto is implemented and available.
        removeBarberClient:
          type: boolean
          description: Whether removeBarberClient is implemented and available.
        removeBarberPortfolioPhoto:
          type: boolean
          description: Whether removeBarberPortfolioPhoto is implemented and available.
        removeBarberProfilePhoto:
          type: boolean
          description: Whether removeBarberProfilePhoto is implemented and available.
        removeMyProfilePhoto:
          type: boolean
          description: Whether removeMyProfilePhoto is implemented and available.
        removeBusinessFinancialAccount:
          type: boolean
          description: Whether removeBusinessFinancialAccount is implemented and available.
        removeBusinessPayoutCard:
          type: boolean
          description: Whether removeBusinessPayoutCard is implemented and available.
        removePaymentMethod:
          type: boolean
          description: Whether removePaymentMethod is implemented and available.
        removeServicePhoto:
          type: boolean
          description: Whether removeServicePhoto is implemented and available.
        removeShopPortfolioPhoto:
          type: boolean
          description: Whether removeShopPortfolioPhoto is implemented and available.
        removeShopProfilePhoto:
          type: boolean
          description: Whether removeShopProfilePhoto is implemented and available.
        requestRefund:
          type: boolean
          description: Whether requestRefund is implemented and available.
        revokeInvitation:
          type: boolean
          description: Whether revokeInvitation is implemented and available.
        revokeTokens:
          type: boolean
          description: Whether revokeTokens is implemented and available.
        setBarberDefaultSchedule:
          type: boolean
          description: Whether setBarberDefaultSchedule is implemented and available.
        softDeleteBarber:
          type: boolean
          description: Whether softDeleteBarber is implemented and available.
        uploadPhoto:
          type: boolean
          description: Whether uploadPhoto is implemented and available.
        verifyAuthentication:
          type: boolean
          description: Whether verifyAuthentication is implemented and available.
      description: Implemented API operation availability flags for the main Guile API.
    apiProblem:
      type: object
      required:
        - type
        - title
        - occurredAt
        - id
        - status
      properties:
        type:
          allOf:
            - $ref: '#/components/schemas/uri'
          description: A URI reference that identifies the problem type.
        title:
          type: string
          maxLength: 120
          description: >-
            A short, human-readable summary of the problem type. The title is
            usually the same for all

            problems with the same `type`.
        occurredAt:
          type: string
          format: date-time
          description: >-
            The date-time when this problem occurred, in [RFC
            3339](https://tools.ietf.org/html/rfc3339)

            date-time `YYYY-MM-DDThh:mm:ss.sssZ` format, UTC. This is derived
            and immutable.
        detail:
          type: string
          maxLength: 256
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
        id:
          allOf:
            - $ref: '#/components/schemas/resourceId'
          description: >-
            The unique identifier for this problem. This is an immutable opaque
            string.
        status:
          allOf:
            - $ref: '#/components/schemas/statusCode'
          description: >-
            The [HTTP status
            code](https://datatracker.ietf.org/doc/html/rfc7231#section-6)for
            this

            occurrence of the problem.
        instance:
          allOf:
            - $ref: '#/components/schemas/uri'
          maxLength: 2048
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem. This is the URI of an

            API resource that the problem is related to, with a unique error
            correlation ID URI fragment.
        attributes:
          type: object
          additionalProperties: {}
          description: >-
            Additional optional attributes related to the problem. This data
            conforms to the schema

            associated with the error type.
        recovery:
          allOf:
            - $ref: '#/components/schemas/clientFailureRecovery'
          description: The recovery contract for this problem occurrence.
        problems:
          type: array
          items:
            $ref: '#/components/schemas/problem'
          maxItems: 128
          description: |-
            Optional root-causes if there are multiple problems in the request
            or API call processing.
      description: >-
        API problem or error response, as per

        [RFC 9457
        application/problem+json](https://tools.ietf.org/html/rfc9457).
    uri:
      type: string
      maxLength: 1024
      format: uri
      description: A URI reference to an internal or external resource.
    resourceId:
      type: string
      description: >-
        The unique, opaque system identifier for a resource.

        This case-sensitive ID is also used as path parameters in URLs or in
        other

        properties or parameters that reference a resource by ID rather than
        URL.
    statusCode:
      type: integer
      format: uint16
      minimum: 100
      maximum: 599
      description: The HTTP status code for a response.
    clientFailureRecovery:
      type: object
      required:
        - outcome
        - retry
      properties:
        outcome:
          allOf:
            - $ref: '#/components/schemas/clientFailureOutcome'
          description: The known outcome of the request.
        retry:
          allOf:
            - $ref: '#/components/schemas/clientRetryDirective'
          description: The safe retry action for the request.
        sessionAction:
          allOf:
            - $ref: '#/components/schemas/clientSessionAction'
          description: The session action required before the request can continue.
        rateLimit:
          allOf:
            - $ref: '#/components/schemas/rateLimit'
          description: The rate limit state that prevented the request.
      description: The recovery contract for a failed client request.
    problem:
      type: object
      required:
        - type
        - title
        - occurredAt
        - id
        - status
      properties:
        type:
          allOf:
            - $ref: '#/components/schemas/uri'
          description: A URI reference that identifies the problem type.
        title:
          type: string
          maxLength: 120
          description: >-
            A short, human-readable summary of the problem type. The title is
            usually the same for all

            problems with the same `type`.
        occurredAt:
          type: string
          format: date-time
          description: >-
            The date-time when this problem occurred, in [RFC
            3339](https://tools.ietf.org/html/rfc3339)

            date-time `YYYY-MM-DDThh:mm:ss.sssZ` format, UTC. This is derived
            and immutable.
        detail:
          type: string
          maxLength: 256
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
        id:
          allOf:
            - $ref: '#/components/schemas/resourceId'
          description: >-
            The unique identifier for this problem. This is an immutable opaque
            string.
        status:
          allOf:
            - $ref: '#/components/schemas/statusCode'
          description: >-
            The [HTTP status
            code](https://datatracker.ietf.org/doc/html/rfc7231#section-6)for
            this

            occurrence of the problem.
        instance:
          allOf:
            - $ref: '#/components/schemas/uri'
          maxLength: 2048
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem. This is the URI of an

            API resource that the problem is related to, with a unique error
            correlation ID URI fragment.
        attributes:
          type: object
          additionalProperties: {}
          description: >-
            Additional optional attributes related to the problem. This data
            conforms to the schema

            associated with the error type.
      description: >-
        Standard problem or error response, as per

        [RFC 9457
        application/problem+json](https://tools.ietf.org/html/rfc9457).
    clientFailureOutcome:
      type: string
      enum:
        - notApplied
        - unknown
      description: The known outcome of a failed client request.
    clientRetryDirective:
      type: string
      enum:
        - doNotRetry
        - retrySameRequest
        - retrySameRequestAfterDelay
      description: The safe retry action for a failed client request.
    clientSessionAction:
      type: string
      enum:
        - refresh
        - signIn
      description: The session action required before a failed request can continue.
    rateLimit:
      type: object
      required:
        - limit
        - remaining
        - resetsAt
      properties:
        limit:
          type: integer
          format: uint64
          description: The maximum number of requests allowed in the active window.
        remaining:
          type: integer
          format: uint64
          description: The number of requests remaining in the active window.
        resetsAt:
          type: string
          format: date-time
          description: >-
            The date-time when the active window resets, in [RFC
            3339](https://tools.ietf.org/html/rfc3339) date-time
            `YYYY-MM-DDThh:mm:ss.sssZ` format, UTC.
      description: The rate limit state for the request.

````