Outdoorsy Users API

The users API from Outdoorsy — 9 operation(s) for users.

Operations 10

GET /autosuggestions Returns a breakdown of previous rentals, bookings or pending reviews. #
GET /confirm #
GET /users #
GET /users/logout #
GET /users/me Returns currently logged in user. #
GET /users/mini_me Returns currently logged in user with minimal info. #
GET /users/todays-activities #
GET /users/{id} #
PATCH /users/{id} #
GET /users/{id}/owner-report-card #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/outdoorsy-users-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

outdoorsy-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Outdoorsy Users API
  version: 0.0.1
  description: 'Operations tagged users across 3 of this provider''s published API definitions: outdoorsy-openapi-original.json, outdoorsy-search-openapi-original.json, outdoorsy-users-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: /v0
tags:
- name: users
paths:
  /autosuggestions:
    get:
      tags:
      - users
      summary: Returns a breakdown of previous rentals, bookings or pending reviews.
      operationId: getAutosuggestions
      parameters:
      - x-go-name: UserID
        name: user_id
        in: query
        schema:
          type: integer
          format: int64
      responses:
        '200':
          $ref: '#/components/responses/getAutosuggestionsResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /confirm:
    get:
      description: Confirm new or changed user email
      tags:
      - users
      operationId: confirmEmail
      parameters:
      - x-go-name: ChangeEmailToken
        name: change_email_token
        in: query
        schema:
          type: string
      - x-go-name: NewEmailToken
        name: new_email_token
        in: query
        schema:
          type: string
      responses:
        '204':
          $ref: '#/components/responses/noContentResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users:
    get:
      description: Return list of users
      tags:
      - users
      operationId: listUsers
      responses:
        '200':
          $ref: '#/components/responses/usersResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/logout:
    get:
      description: Log user out by invalidating authorization token
      tags:
      - users
      operationId: logoutUser
      responses:
        '204':
          $ref: '#/components/responses/noContentResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/me:
    get:
      description: 'Must be authenticated to make this request, otherwise an unauthorized error

        is returned.'
      tags:
      - users
      summary: Returns currently logged in user.
      operationId: usersMe
      responses:
        '200':
          $ref: '#/components/responses/userResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/mini_me:
    get:
      description: 'Must be authenticated to make this request, otherwise an unauthorized error

        is returned.'
      tags:
      - users
      summary: Returns currently logged in user with minimal info.
      operationId: getMiniMe
      responses:
        '200':
          $ref: '#/components/responses/userResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/todays-activities:
    get:
      description: Returns today's activities for the owner
      tags:
      - users
      operationId: getTodaysActivities
      responses:
        '200':
          $ref: '#/components/responses/todaysActivitiesResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/{id}:
    get:
      description: Return requested user model
      tags:
      - users
      operationId: getUserById
      parameters:
      - x-go-name: ID
        name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          $ref: '#/components/responses/userResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    patch:
      description: Update a user
      tags:
      - users
      operationId: updateUser
      parameters:
      - x-go-name: ID
        name: id
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          $ref: '#/components/responses/userResponse'
        '400':
          $ref: '#/components/responses/badRequestError'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Profile'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
  /users/{id}/owner-report-card:
    get:
      description: Returns statistics about the owner
      tags:
      - users
      operationId: ownerReportCard
      parameters:
      - name: Start
        in: query
        schema:
          type: string
      - name: End
        in: query
        schema:
          type: string
      - name: IncludeAllRentals
        in: query
        schema:
          type: boolean
      responses:
        '200':
          $ref: '#/components/responses/ownerReportCardResponse'
        '401':
          $ref: '#/components/responses/unauthorizedError'
        '404':
          $ref: '#/components/responses/notFoundError'
        default:
          $ref: '#/components/responses/genericError'
      security:
      - Bearer:
        - '[]'
      - API-Key:
        - '[]'
    servers:
    - url: /v0
components:
  schemas:
    Verifications:
      type: object
      properties:
        email:
          type: boolean
          x-go-name: Email
        facebook:
          $ref: '#/components/schemas/DBInterfaceMap'
        has_sent_message_without_phone_verified:
          type: boolean
          x-go-name: HasSentMessageWithoutPhoneVerified
        phone:
          type: boolean
          x-go-name: Phone
      x-go-package: github.com/outdoorsy/api/model
    Locale:
      type: object
      properties:
        base_currency:
          type: string
          x-go-name: BaseCurrency
        date_format:
          type: string
          x-go-name: DateFormat
        distance_unit:
          type: string
          x-go-name: DistanceUnit
        language:
          type: string
          x-go-name: Language
        length_unit:
          type: string
          x-go-name: LengthUnit
        liquid_unit:
          type: string
          x-go-name: LiquidUnit
        time_format:
          type: string
          x-go-name: TimeFormat
        timezone:
          type: string
          x-go-name: Timezone
        weight_unit:
          type: string
          x-go-name: WeightUnit
      x-go-package: github.com/outdoorsy/api/model
    Action:
      type: string
      x-go-package: github.com/outdoorsy/api/internal/earned_credit
    TaxRate:
      type: object
      properties:
        archived:
          type: boolean
          x-go-name: Archived
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        description:
          type: string
          x-go-name: Description
        id:
          type: integer
          format: int64
          x-go-name: ID
        marketplace:
          type: boolean
          x-go-name: MarketPlace
        name:
          type: string
          x-go-name: Name
        owner_id:
          type: integer
          format: int64
          x-go-name: OwnerID
        rate:
          type: number
          format: double
          x-go-name: Rate
        state:
          description: carry through to booking_tax_rates table from avalara
          type: string
          x-go-name: State
        updated:
          type: string
          x-go-name: Updated
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        zip_code:
          type: string
          x-go-name: ZipCode
      x-go-package: github.com/outdoorsy/api/internal/tax_rates
    GpsDevicesData:
      type: object
      properties:
        account_api_key:
          type: string
          x-go-name: AccountApiKey
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        deleted:
          type: string
          x-go-name: Deleted
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        device_count:
          type: integer
          format: int64
          x-go-name: DeviceCount
        id:
          type: integer
          format: int64
          x-go-name: Id
        metadata:
          $ref: '#/components/schemas/IMap'
        provider_type:
          type: string
          x-go-name: ProviderType
        updated:
          type: string
          x-go-name: Updated
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        user_id:
          type: integer
          format: int64
          x-go-name: UserID
      x-go-package: github.com/outdoorsy/api/internal/zubie
    RolePermission:
      type: object
      properties:
        can_create:
          type: boolean
          x-go-name: CanCreate
        can_delete:
          type: boolean
          x-go-name: CanDelete
        can_read:
          type: boolean
          x-go-name: CanRead
        can_update:
          type: boolean
          x-go-name: CanUpdate
        created:
          type: string
          format: date-time
          x-go-name: Created
        id:
          type: integer
          format: int64
          x-go-name: ID
        label:
          type: string
          x-go-name: Label
        name:
          type: string
          x-go-name: Name
        permission_id:
          type: integer
          format: int64
          x-go-name: PermissionID
        role_id:
          type: integer
          format: int64
          x-go-name: RoleID
        updated:
          type: string
          format: date-time
          x-go-name: Updated
      x-go-package: github.com/outdoorsy/api/internal/role_permission
    LocAvailabilityInfo:
      type: object
      properties:
        end_time:
          type: integer
          format: int64
          x-go-name: EndTime
        start_time:
          type: integer
          format: int64
          x-go-name: StartTime
        unavailable:
          type: boolean
          x-go-name: Unavailable
      x-go-package: github.com/outdoorsy/api/internal/location
    PaymentProcessorName:
      type: string
      x-go-package: github.com/outdoorsy/api/controller/broker
    ineligibleRental:
      type: object
      properties:
        id:
          type: integer
          format: int64
          x-go-name: ID
        insurance_state:
          type: string
          x-go-name: InsuranceState
        name:
          type: string
          x-go-name: Name
      x-go-package: github.com/outdoorsy/api/model
    OwnerActivity:
      type: object
      properties:
        details:
          $ref: '#/components/schemas/MSI'
        expires_at:
          type: string
          x-go-name: ExpiresAt
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        image_url:
          type: string
          x-go-name: ImageURL
        subtitle:
          type: string
          x-go-name: Subtitle
        tier:
          type: integer
          format: int64
          x-go-name: Tier
        title:
          type: string
          x-go-name: Title
        type:
          type: string
          x-go-name: Type
      x-go-package: github.com/outdoorsy/api/internal/todays_activities
    ProStatus:
      type: object
      properties:
        approval_rate:
          type: number
          format: double
          x-go-name: ApprovalRate
        bank_account:
          type: boolean
          x-go-name: BankAccount
        completed_points:
          type: integer
          format: int64
          x-go-name: CompletedPoints
        description:
          type: boolean
          x-go-name: Description
        eligible_insurance:
          type: boolean
          x-go-name: EligibleInsurance
        pending_rentals:
          type: array
          items:
            $ref: '#/components/schemas/ineligibleRental'
          x-go-name: PendingRentals
        pro:
          type: boolean
          x-go-name: Pro
        profile_percent_complete:
          type: integer
          format: int64
          x-go-name: ProfilePercentComplete
        rating:
          type: number
          format: double
          x-go-name: Rating
        response_time:
          type: integer
          format: int64
          x-go-name: ResponseTime
        response_time_rank:
          type: integer
          format: int64
          x-go-name: ResponseTimeRank
        total_points:
          type: integer
          format: int64
          x-go-name: TotalPoints
        verified_phone:
          type: boolean
          x-go-name: VerifiedPhone
      x-go-package: github.com/outdoorsy/api/model
    NotificationBrowser:
      type: object
      properties:
        all:
          type: boolean
          x-go-name: All
      x-go-package: github.com/outdoorsy/api/internal/user_helper
    SocialSlice:
      type: array
      items:
        $ref: '#/components/schemas/Social'
      x-go-package: github.com/outdoorsy/api/types
    SpecialHour:
      description: '───────────────────────────────────────────────────────────────────────────

        Special Hours

        ───────────────────────────────────────────────────────────────────────────'
      type: object
      properties:
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        created_from_id:
          type: integer
          format: int64
          x-go-name: CreatedFromId
        dropoff:
          $ref: '#/components/schemas/SpecialHourDropoff'
        end_date:
          type: string
        id:
          type: integer
          format: int64
          x-go-name: ID
        location_id:
          type:
          - integer
          - 'null'
          format: int64
        name:
          type: string
          x-go-name: Name
        owner_id:
          type: integer
          format: int64
          x-go-name: OwnerID
        pickup:
          $ref: '#/components/schemas/SpecialHourPickup'
        repeats:
          type: boolean
          x-go-name: Repeats
        start_date:
          type: string
        updated:
          type: string
          x-go-name: Updated
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        weekdays:
          $ref: '#/components/schemas/DBStringSlice'
      x-go-package: github.com/outdoorsy/api/internal/special_hours
    License:
      description: License holds driver's license information for a user
      type: object
      x-go-package: github.com/outdoorsy/api/model
    IMap:
      type: object
      additionalProperties: {}
      x-go-package: github.com/outdoorsy/api/pkg/jsonb
    AutoSuggestionsResponse:
      type: object
      properties:
        awaiting_review:
          type: array
          items:
            type: integer
            format: int64
          x-go-name: BookingIDsAwaitingReview
        id:
          type: integer
          format: int64
          x-go-name: ID
        incomplete_bookings:
          type: array
          items:
            type: integer
            format: int64
          x-go-name: IncompleteBookingIDs
        previous_rentals:
          type: array
          items:
            type: integer
            format: int64
          x-go-name: PreviousRentalIDs
        recent_searches:
          type: array
          items:
            type: integer
            format: int64
          x-go-name: RecentSearchIDs
      x-go-package: github.com/outdoorsy/api/internal/autosuggestions
    analyticsReport:
      type: object
      properties:
        approval_rate:
          type: number
          format: double
          x-go-name: ApprovalRate
        total_addon_payouts:
          type: integer
          format: int64
          x-go-name: TotalAddonPayouts
        total_booking_requests:
          type: integer
          format: int64
          x-go-name: TotalBookingRequests
        total_confirmed_bookings:
          type: integer
          format: int64
          x-go-name: TotalConfirmedBookings
        total_payout_amount:
          type: integer
          format: int64
          x-go-name: TotalPayoutAmount
      x-go-package: github.com/outdoorsy/api/cmd/web/handlers
    MSI:
      type: object
      additionalProperties: {}
      x-go-package: github.com/outdoorsy/api/internal/platform/db
    NotificationMobile:
      type: object
      properties:
        all:
          type: boolean
          x-go-name: All
      x-go-package: github.com/outdoorsy/api/internal/user_helper
    NotificationEmail:
      type: object
      properties:
        abandoned_checkout:
          type: boolean
          x-go-name: AbandonedCheckout
        all:
          type: boolean
          x-go-name: All
      x-go-package: github.com/outdoorsy/api/internal/user_helper
    UserSecurity:
      type: object
      properties:
        force_password_reset:
          type: boolean
          x-go-name: ForcePasswordReset
        social_login_disabled:
          type: boolean
          x-go-name: SocialLoginDisabled
        user_id:
          type: integer
          format: int64
          x-go-name: UserID
      x-go-package: github.com/outdoorsy/api/internal/security
    BookingRestrictions:
      type: object
      properties:
        all_booking_cancellation_threshold:
          type: integer
          format: int64
          x-go-name: AllBookingCancellationThreshold
        all_booking_cancellations_six_months:
          type: integer
          format: int64
          x-go-name: AllBookingCancellationsSixMonths
        cancellation_penalty_less_than_7_days:
          type: integer
          format: int64
          x-go-name: CancellationPenaltyLessThan7Days
        cancellation_penalty_more_than_7_days:
          type: integer
          format: int64
          x-go-name: CancellationPenaltyMoreThan7Days
        instant_book_cancellation_threshold:
          type: integer
          format: int64
          x-go-name: InstantBookCancellationThreshold
        instant_book_cancellations_six_months:
          type: integer
          format: int64
          x-go-name: InstantBookCancellationsSixMonths
        is_instant_book_banned:
          type: boolean
          x-go-name: InstantBookBanned
      x-go-package: github.com/outdoorsy/api/model
    LocAvailability:
      type: object
      properties:
        days:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/LocAvailabilityDay'
          x-go-name: Days
      x-go-package: github.com/outdoorsy/api/internal/location
    User:
      description: 'A user is the security principal for this application.


        A user can be an owner, renter, agent or admin.'
      type: object
      title: User represents the user for this application
      properties:
        accept_percent:
          type: number
          format: double
          x-go-name: AcceptPercent
        accepted_tos_version:
          type: integer
          format: int64
          x-go-name: AcceptedTOSVersion
        accepted_tos_versions:
          type: array
          items:
            $ref: '#/components/schemas/TOS_Acceptance'
          x-go-name: AcceptedTOSVersions
        account_id:
          type:
          - string
          - 'null'
        active_quotes_count:
          type: integer
          format: int64
          x-go-name: ActiveQuotesCount
        active_reservations_count:
          description: Holds the count of active reservations and quotes for DOU
          type: integer
          format: int64
          x-go-name: ActiveReservationsCount
        addon_fee_percentage:
          type: number
          format: double
          x-go-name: AddonFeePercentage
        admin:
          type: boolean
          x-go-name: IsAdmin
        admin_level:
          type: integer
          format: int64
          x-go-name: AdminLevel
        api_key:
          type: string
          x-go-name: APIKey
        approved_drivers:
          type: boolean
          x-go-name: ApprovedDrivers
        archived:
          type:
          - boolean
          - 'null'
        auto_owner:
          type: boolean
          x-go-name: IsAutoOwner
        average_response_time:
          $ref: '#/components/schemas/NullFloat64'
        bank_country:
          type: string
          x-go-name: BankCountry
        banned:
          description: admin only
          type: boolean
          x-go-name: Banned
        campground_owner:
          type: boolean
          x-go-name: IsCampgroundOwner
        campground_user:
          type: boolean
          x-go-name: IsCampgroundUser
        can_accept_payments:
          type: boolean
          x-go-name: CanAcceptPaymentsField
        cash_credits:
          type: integer
          format: uint64
          x-go-name: OriginalCredits
        cc_fee_percentage:
          type: number
          format: double
          x-go-name: CCFeePercentage
        commercial_insurance:
          type: boolean
          x-go-name: CommercialInsurance
        completed_bookings:
          type: integer
          format: int64
          x-go-name: CompletedBookings
        confirmed:
          type: boolean
          x-go-name: Confirmed
        created:
          type: string
          x-go-name: Created
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        credits:
          type: integer
          format: uint64
          x-go-name: AvailableCredits
        csm_agent_id:
          description: User ID of the CSM agent assigned to the corresponding owner/dealer
          type: integer
          format: int64
          x-go-name: CSMAgentID
        deal_id:
          description: Deal ID used to store Hubspot deals
          type: string
          x-go-name: DealID
        dealer:
          description: dealer/employee support
          type: boolean
          x-go-name: Dealer
        deposits_disabled:
          type: boolean
          x-go-name: DepositsDisabled
        display_w9_reminder:
          type: boolean
          x-go-name: DisplayW9Reminder
        driver_checks_enabled:
          type: boolean
          x-go-name: DriverChecksEnabled
        drivers:
          type: array
          items:
            $ref: '#/components/schemas/Driver'
          x-go-name: AdditionalDrivers
        earned_credits:
          type: array
          items:
            $ref: '#/components/schemas/EarnedCredit'
          x-go-name: EarnedCredits
        employee:
          type: boolean
          x-go-name: Employee
        esign_enabled:
          type: boolean
          x-go-name: EsignEnabled
        fleet_api_key:
          type: string
          x-go-name: FleetAPIKey
        force_reconnect_bank:
          type: boolean
          x-go-name: ForceReconnectBank
        fraud_review_complete:
          type: boolean
          x-go-name: FraudReviewComplete
        fraudulent:
          type: boolean
          x-go-name: Fraudulent
        gps_device_data:
          $ref: '#/components/schemas/GpsDevicesData'
        group_on_map:
          type: boolean
          x-go-name: GroupOnMap
        guest:
          type: boolean
          x-go-name: Guest
        has_connected_gateway:
          description: 'Indicates to the FE that this user has a connected gateway and the

            Spreedly CC form should be used when adding renter CCs'
          type: boolean
          x-go-name: HasConnectedGateway
        has_gps_device:
          type: boolean
          x-go-name: HasGPSDevice
        has_notes_to_renters_migrated:
          type: boolean
          x-go-name: HasNotesToRentersMigrated
        has_setup_intent_enabled:
          type: boolean
          x-go-name: HasSetupIntentEnabled
        hidden:
          type: boolean
          x-go-name: Hidden
        host_type_by_rental_category:
          type: string
          x-go-name: HostTypeByRentalCategory
        host_type_by_rental_count:
          type: string
          x-go-name: HostTypeByRentalCount
        id:
          description: internal - server generated and not mutable by PATCH
          type: integer
          format: int64
          x-go-name: ID
        impersonated:
          type: boolean
          x-go-name: Impersonated
        import_id:
          type: string
          x-go-name: ImportID
        inactive_by:
          type: integer
          format: int64
          x-go-name: InactiveBy
        inactive_on:
          type: string
          x-go-name: InactiveOn
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        is_admin_managed_superhost:
          type: boolean
          x-go-name: IsAdminManagedSuperHost
        is_award_winner:
          type: boolean
          x-go-name: IsAwardWinner
        is_csm_agent:
          description: Represents if a user is CSM agent
          type: boolean
          x-go-name: IsCSMAgent
        is_military_host:
          type: boolean
          x-go-name: IsMilitaryHost
        is_superhost:
          description: SuperHost
          type: boolean
          x-go-name: IsSuperHost
        items:
          type: array
          items:
            $ref: '#/components/schemas/RentalItem'
          x-go-name: Items
        last_accessed_ip:
          type:
          - string
          - 'null'
        last_activity_at:
          type: string
          x-go-name: Accessed
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        legacy_tracking_device_count:
          type: integer
          format: int64
          x-go-name: LegacyTrackingDeviceCount
        metadata:
          $ref: '#/components/schemas/MSI'
        missing_fields:
          $ref: '#/components/schemas/DBStringSlice'
        num_reservations:
          type: integer
          format: int64
          x-go-name: NumReservations
        offer_roamly:
          type: boolean
          x-go-name: OfferRoamly
        offers_delivery:
          type: boolean
          x-go-name: OffersDelivery
        owned_by_id:
          type: integer
          format: int64
          x-go-name: OwnedByID
        owner:
          type: boolean
          x-go-name: IsOwner
        owner_fee_percentage:
          description: admin only
          type: number
          format: double
          x-go-name: OwnerFeePercentage
        owner_score:
          type: number
          format: double
          x-go-name: OwnerScore
        owner_score_count:
          type: integer
          format: int64
          x-go-name: OwnerReviewsCount
        partner_app_id:
          type:
          - integer
          - 'null'
          format: int64
        partner_id:
          type:
          - integer
          - 'null'
          format: int64
        payment_processing_info:
          description: internal - server generated and not sent to client
          type: array
          items:
            $ref: '#/components/schemas/PaymentProcessingInfo'
          x-go-name: PaymentProcessingInfo
        pending_email:
          type: string
          x-go-name: PendingEmail
        permissions:
          $ref: '#/components/schemas/DBBoolMap'
        pro:
          type: boolean
          x-go-name: Pro
        pro_status:
          $ref: '#/components/schemas/ProStatus'
        profile:
          $ref: '#/components/schemas/Profile'
        reconnect_bank:
          type: boolean
          x-go-name: ReconnectBank
        referral_code:
          type: string
          x-go-name: ReferralCode
        referred_by_id:
          type: integer
          format: int64
        referred_owner_paid:
          type: boolean
          x-go-name: ReferredOwnerPaid
        referred_owner_payout_amount:
          type: integer
          format: uint64
          x-go-name: ReferredOwnerPayoutAmount
        referred_renter_paid:
          type: boolean
          x-go-name: ReferredRenterPaid
        referred_renter_payout_amount:
          type: integer
          format: uint64
          x-go-name: ReferredRenterPayoutAmount
        renter:
          type: boolean
          x-go-name: IsRenter
        renter_fee_percentage:
          type: number
          format: double
          x-go-name: RenterFeePercentage
        require_w9_form:
          type: boolean
          x-go-name: RequireW9Form
        require_w9_to_accept_booking:
          type: boolean
          x-go-name: RequireW9ToAcceptBooking
        response_percent:
          $ref: '#/components/schemas/NullFloat64'
        roadside_missing:
          $ref: '#/components/schemas/DBStringSlice'
        roamly_carshare_user:
          type: boolean
          x-go-name: RoamlyCarshareUser
        roamly_policy_id:
          type: string
          x-go-name: RoamlyPolicyID
        roamly_policy_number:
          type: string
          x-go-name: RoamlyPolicyNumber
        roamly_status:
          type: string
          x-go-name: RoamlyStatus
        role:
          $ref: '#/components/schemas/Role'
        rv_owner:
          description: Host Rental Possession
          type: boolean
          x-go-name: IsRVOwner
        score:
          type: number
          format: double
          x-go-name: Score
        score_count:
          description: 'Only used by database triggers, not intended for use by

            anything in the application.  They''re listed here to make sure

            the migration system creates the columns.'
          type: integer
          format: int64
          x-go-name: ReviewsCount
        search_metrics_start_date:
          type: string
        security:
          $ref: '#/components/schemas/UserSecurity'
        self_serve_signup:
          type:
          - boolean
          - 'null'
        session_id:
          type: string
          x-go-name: SessionID
        show_gps_deprecation_warning:
          type: boolean
          x-go-name: ShowGpsDeprecationWarning
        signup_source:
          type: string
          x-go-name: SignupSource
        skip_w9_to_publish:
          type: boolean
          x-go-name: SkipW9ToPublish
        slug:
          type: string
          x-go-name: Slug
        sso:
          $ref: '#/components/schemas/SSO'
        stay_owner:
          type: boolean
          x-go-name: IsStayOwner
        superhost_cancel_rate:
          type: number
          format: double
          x-go-name: SuperHostCancelRate
        superhost_departed_bookings:
          type: integer
          format: int64
          x-go-name: SuperHostDepartedBookings
        superhost_last_assessment:
          type: string
          x-go-name: SuperHostLastAssessment
          x-go-type: github.com/outdoorsy/api/clocks.RfcTime
        superhost_last_start_assessment:
          type: string
          x-g

# --- truncated at 32 KB (74 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/outdoorsy/refs/heads/main/openapi/outdoorsy-users-api-openapi.yml