Schema reference
Schema reference
Schema reference
Generated from the public RollerUp GraphQL schema. Download the full schema as SDL: rollerup-schema.graphql
Objects
| Type | Description |
|---|---|
| Car | |
| Card | Represents a card used to make a payment. |
| CarPage | Paginated result for car queries |
| CustomersPage | Paginated result for RollerUp customer search queries |
| Discount | Represents a discount that can be applied to subscriptions or purchases. Discounts can be either a fixed amount off or a percentage off the total. |
| DiscountPage | Paginated result for discounts |
| Employee | Represents an employee. This is backed by the same data as the User model, but with less fields and without the same permission restrictions. |
| EmployeesPage | Paginated result for employee queries |
| Fleet | |
| FleetInvitation | |
| FleetInvitationPayload | |
| FleetPage | |
| FleetSignupCar | |
| Group | Represents a user group for organizing users and managing permissions |
| Location | Represents a location in the system |
| LocationPage | Paginated result for location queries |
| Membership | |
| MembershipCar | A car linked to a subscription membership, including scheduled end-of-period removal. |
| MembershipCarChangePreview | Preview of a membership car change. Reflects the upcoming invoice for the proposed change without mutating any state. |
| MembershipCarChangePreviewLineItem | A line item from the upcoming invoice preview. |
| MembershipSearchPage | Paginated result for membership search queries |
| MergeCarsResult | |
| MutateUserResponse | |
| Note | |
| OwnerCar | A vehicle registered to an owner plan |
| OwnerPlan | Full representation of an owner plan with nested relations. Use ownerPlan(id) query to fetch this for detail views. |
| OwnerVisit | A wash record for an owner plan |
| OwnerVisitsPage | |
| PageInfo | |
| PaidInvoice | |
| PaidInvoicePage | |
| PaymentMethod | Represents a payment method (source-agnostic) |
| PlateChange | A record of a plate change (car linked or unlinked from a membership) |
| Prepaid | Represents a prepaid that can be redeemed for wash packages |
| PrepaidBook | Represents a prepaid book that contains prepaid codes |
| PrepaidBookPage | Paginated result for prepaid books |
| PrepaidCode | Represents a prepaid code that can be redeemed for a prepaid |
| PrepaidCodePage | Paginated result for prepaid codes |
| PrepaidCodeRedemption | Represents a redemption of a prepaid code |
| PrepaidCodeRedemptionPage | Paginated result for prepaid code redemptions |
| PrepaidPage | Paginated result for prepaids |
| Price | Represents a price for a wash package with billing details |
| PriceTier | A pricing tier for graduated pricing. Each tier defines a unit price that applies starting at a given quantity. |
| PricingProfile | Represents a Pricing profile in the system |
| PumpWashCode | Represents a generated pump wash code |
| PumpWashPackage | Represents a pump wash package — a wash package offered through a pump wash controller |
| RollerupCustomer | Represents a RollerUp customer with their subscriptions |
| RollerupSubscription | |
| Schedule | A schedule defining availability of a resource (e.g. a price or discount). |
| SimpleCompany | Simplified company type with minimal fields |
| SimpleLocation | Represents a location in the system with only primitives and no sensitive settings |
| SimpleMembership | Lightweight membership projection for list / search results. Carries denormalized subscription status and customer identity, omits nested relations like linked cars. Fetch a full Membership via the membership(id:) query when detail is needed. |
| SimpleOwnerPlan | Simple flat representation of an owner plan without nested relations. |
| SimpleOwnerPlansPage | Paginated result for simple owner plan queries |
| SimplePaidInvoiceLineItem | |
| SimplePrepaidExport | Minimal prepaid export fields for list display (e.g. on Prepaid.exports). |
| SimplePrice | Lightweight price projection for list / search results. Utilizes denormalized fields to avoid nested queries. |
| SimpleProduct | Lightweight projection of Product — scalar fields only, no relational joins or computed aggregates. Used by list payloads like Price.product so paginated responses don’t fan out into per-row activeLocationCount and productPrices resolutions. |
| SimpleRollerupCustomer | |
| StripeAccount | Represents a Stripe account in the system |
| StripeAccountPage | Paginated result for Stripe account queries |
| StripeAccountRequirements | Stripe account requirements for onboarding and compliance |
| StripeCustomer | Represents a Stripe customer in the system |
| StripeCustomerMembership | Represents a customer membership with subscription details |
| User | Represents a user in the system |
| UserPage | Paginated result for user queries |
| Vehicle | Represents a vehicle/car associated with a customer subscription |
| Visit | Represents a visit to a location |
| VisitsPage | Paginated result for visit queries |
| WashCode | A free wash code that can be redeemed for a wash package |
| WashCodeGroup | A group of free wash codes |
| WashCodeGroupPage | Paginated result for wash code groups |
| WashCodePage | Paginated result for wash codes |
| WashCodeRedemption | Represents a redemption of a wash code |
| WashCodeRedemptionPage | Paginated result for wash code redemptions |
| WashPackage | Represents a Wash package in RollerUp |
Inputs
| Type | Description |
|---|---|
| AddCarToFleetInput | |
| AddCarToMembershipInput | |
| AddCarToOwnerPlanInput | Input for adding a car to an owner plan |
| CancelCarRemovalFromFleetInput | |
| CancelCarRemovalInput | |
| CancelFleetInput | |
| CancelSubscriptionInput | Input for cancelling a subscription at the end of the current period. |
| CarsQueryInput | Pagination input for querying cars. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| CreateDiscountInput | Input for creating a new discount. You must specify either amountOff (fixed amount) or percentOff (percentage), but not both. The duration determines how long the discount applies to subscriptions. |
| CreateFleetInput | |
| CreateNoteInput | |
| CreateOwnerPlanInput | Input for creating a new owner plan |
| CreatePriceTierInput | Input for creating a pricing tier |
| CreatePumpWashCodeInput | |
| CreateUserInput | Input for creating a new user in the system. Note: If username is provided, either password must be set or issueTempPassword must be true. |
| CreateWashPackageInput | Input for creating a new wash package |
| CustomersInput | Input for searching RollerUp customers with multiple optional filter criteria. Supports cursor-based pagination. Multiple filters are combined using AND logic. |
| DiscountQueryInput | Input for querying discounts with optional filter criteria. Supports both forward and backward cursor-based pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| EmployeesInput | Input for querying employees. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| FleetPriceInput | |
| FleetSignupCarInput | |
| FleetsQueryInput | |
| ListOwnerPlansInput | Pagination input for querying owner plans. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| ListOwnerVisitsInput | Pagination input for querying owner visits. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| LocationQueryInput | Pagination input for querying locations. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| MembershipSearchInput | Input for searching memberships with multiple optional filter criteria. Supports cursor-based pagination. Multiple filters are combined using AND logic. |
| MergeCarsInput | Input for merging two duplicate cars |
| MergeCustomersInput | Input for merging one RollerUp customer into another. The source customer is hard-deleted after dependent records are re-pointed to the target. |
| PaidInvoicesQueryInput | |
| PlateChangeHistoryInput | Input for querying plate change history |
| PrepaidBookQueryInput | Pagination input for querying prepaid books. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| PrepaidCodeQueryInput | Pagination input for querying prepaid codes. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| PrepaidCodeRedemptionQueryInput | Pagination input for querying prepaid code redemptions. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| PrepaidQueryInput | Pagination input for querying prepaids. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| PreviewMembershipCarChangeInput | |
| RedeemPumpWashCodeInput | |
| RemoveCarFromFleetInput | |
| RemoveCarFromMembershipInput | |
| ScheduleInput | Input for creating a new Schedule. All DateTime values follow the same floating-time convention described on the Schedule type. |
| StripeAccountQueryInput | Pagination input for querying Stripe accounts. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| UpdateCustomerInput | Input for updating a RollerUp customer. |
| UpdateFleetInput | |
| UpdateOwnerPlanCarInput | Input for updating a car on an owner plan |
| UpdateOwnerPlanInput | Input for updating an existing owner plan. All fields except ‘id’ are optional. |
| UpdateUserInput | Input for updating an existing user. All fields except ‘id’ are optional |
| UpdateWashPackageInput | Input for updating an existing wash package. All fields except ‘id’ are optional. |
| UserQueryInput | Pagination input for querying users. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| VisitsInput | Options for setting pagination and filtering for the visits query |
| WashCodeGroupQueryInput | Pagination input for querying wash code groups. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| WashCodeQueryInput | Pagination input for querying wash codes. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
| WashCodeRedemptionQueryInput | Pagination input for querying wash code redemptions. Supports both forward and backward pagination. Use ‘first’ and ‘after’ for forward pagination, or ‘last’ and ‘before’ for backward pagination. |
Enums
| Type | Description |
|---|---|
| ArchivedReason | Why a record was archived. USER means a user explicitly archived it. SYSTEM means it was automatically archived because a newer version replaced it. CASCADE means it was automatically archived alongside a parent record being archived (e.g. a Price cascade-archived when its Product is archived). |
| BillingFrequency | Billing frequency options for subscription prices |
| CancelType | |
| DiscountDuration | Duration types for how long a discount applies to a subscription |
| FleetSignupCarFailureReason | |
| FleetSignupCarStatus | |
| MembershipCarChangeIntent | The kind of change being previewed against a membership’s linked cars. |
| PaymentMethodSource | Source of the payment method (stripe, internal, etc) |
| PaymentMethodType | How a paid invoice was paid |
| ProductType | Product type discriminator. |
| RefundType | |
| SubscriptionChangeType | |
| TrialUnits | Trial period units for free trial durations |
Scalars
| Type | Description |
|---|---|
| Boolean | The Boolean scalar type represents true or false. |
| DateTime | |
| EmailAddress | |
| Float | The Float scalar type represents signed double-precision fractional values as specified by IEEE 754. |
| ID | The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID. |
| Int | The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1. |
| LocalDate | |
| PhoneNumber | Phone number scalar that enforces E.164 format (e.g., +1234567890) |
| RRule | RFC-5545 compliant recurrence rule scalar |
| String | The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text. |
| USPostalCode | Postal code scalar that enforces valid US postal code format |
| USStateCode | State code scalar that enforces valid 2-character USPS state code format |