Shop-Ware Repair Orders API

The Repair Orders API from Shop-Ware — 5 operation(s) for repair orders.

Operations 8

POST /api/v1/tenants/{tenant_id}/repair_orders/{id}/start Start a specific repair order
POST /api/v1/tenants/{tenant_id}/repair_orders/{id}/share Share repair order via text
GET /api/v1/tenants/{tenant_id}/repair_orders Get a list of all repair orders
POST /api/v1/tenants/{tenant_id}/repair_orders Create a repair order
GET /api/v1/tenants/{tenant_id}/repair_orders/{id} Get a specific repair order by ID
PUT /api/v1/tenants/{tenant_id}/repair_orders/{id} Update a specific repair order
GET /api/v2/tenants/{tenant_id}/repair_orders Get a list of all repair orders
POST /api/v2/tenants/{tenant_id}/repair_orders Create a repair order

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/shop-ware-repair-orders-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

shop-ware-repair-orders-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: V1 API Partners Repair Orders API
  version: v1
  contact:
    name: API Support
    email: support@shop-ware.com
servers:
- url: https://api.shop-ware.com
  description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- api_partner_id: []
  api_secret: []
tags:
- name: Repair Orders
paths:
  /api/v1/tenants/{tenant_id}/repair_orders/{id}/start:
    parameters:
    - name: tenant_id
      in: path
      required: true
      example: '1'
      schema:
        type: integer
    - name: id
      in: path
      required: true
      example: '1'
      schema:
        type: integer
    post:
      summary: Start a specific repair order
      tags:
      - Repair Orders
      parameters: []
      responses:
        '200':
          description: successful
          content:
            application/json:
              examples:
                successful:
                  value:
                    id: 1
                    created_at: '2026-06-09T14:25:00Z'
                    updated_at: '2026-06-09T14:25:00Z'
                    number: 11341
                    odometer: 90321
                    odometer_out: null
                    state: in_progress
                    customer_id: 3
                    technician_id: 2
                    advisor_id: 1
                    vehicle_id: 1
                    detail: Key tag 84, customer waiting
                    preferred_contact_type: Text
                    part_discount_cents: null
                    labor_discount_cents: null
                    shop_id: 2
                    status_id: null
                    taxable: true
                    customer_source: Repeat
                    supply_fee_cents: 3250
                    part_discount_percentage: null
                    labor_discount_percentage: null
                    customer_concern: example of reason for customers to visit
                    vehicle_use: example of primary use of vehicle
                    fleet_po: null
                    started_at: null
                    closed_at: null
                    picked_up_at: null
                    due_in_at: '2026-06-12T14:25:00Z'
                    due_out_at: null
                    part_tax_rate: 0.0
                    labor_tax_rate: 0.0
                    hazmat_tax_rate: 0.0
                    sublet_tax_rate: 0.0
                    services:
                    - id: 1
                      created_at: '2026-06-09T14:25:00Z'
                      updated_at: '2026-06-09T14:25:00Z'
                      title: Warning Light On
                      completed: false
                      category_id: 4
                      row_order: 1
                      fixed_price_cents: null
                      canned_job_id: 1
                      comment: ''
                      fixed_price_labor_total_cents: null
                      is_fixed_price_service: false
                      labor_rate_cents: 10000
                      completed_at: null
                      last_completed_at: null
                      labors:
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        name: Advise on proper course of action
                        technician_id: 2
                        taxable: false
                        hours: 0.13
                        row_order: 1
                      parts:
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        brand: Superbright
                        description: 194 LED - AMBER 120*
                        number: WLED-A-120
                        quoted_price_cents: 395
                        cost_cents: 85
                        part_inventory_id: 1
                        taxable: false
                        sell_price_cents: 395
                        quantity: 1.0
                        quantity_needed: 1.0
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        brand: Superbright
                        description: 194 LED - AMBER 120*
                        number: WLED-A-120
                        quoted_price_cents: 500
                        cost_cents: 85
                        part_inventory_id: 1
                        taxable: false
                        sell_price_cents: 500
                        quantity: 1.0
                        quantity_needed: 0.0
                      hazmats:
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        name: Recycling fee
                        fee_cents: 2000
                        taxable: true
                        quantity: 1.0
                      sublets:
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        name: Windshield repair
                        price_cents: 1999
                        cost_cents: 999
                        provider: Windshield Bros.
                        invoice_number: '1111'
                        description: windshield provider
                        taxable: true
                        vendor_id: 1
                        invoice_date: '2026-06-10T14:25:00Z'
                      inspections:
                      - id: 1
                        created_at: '2026-06-09T14:25:00Z'
                        updated_at: '2026-06-09T14:25:00Z'
                        name: Measure tire tread depth
                        state: red
                    payments:
                    - id: 1
                      created_at: '2026-06-09T14:25:00Z'
                      updated_at: '2026-06-09T14:25:00Z'
                      payment_type: Credit Card - Visa
                      payment_type_details:
                        type: Credit Card
                        name: Visa
                      notes: Customer made partial payment
                      amount_cents: 21849
                    integrator_tags:
                    - id: 1
                      created_at: '2026-06-09T14:25:00Z'
                      updated_at: '2026-06-09T14:25:00Z'
                      taggable_type: RepairOrder
                      taggable_id: 1
                      name: tag_name
                      value: tag_value
                    label: null
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    description: Unique identifier of this record.
                  number:
                    type: integer
                    description: The RO number.
                  odometer:
                    type:
                    - integer
                    - 'null'
                  odometer_out:
                    type:
                    - integer
                    - 'null'
                  state:
                    type: string
                    description: One of 'estimate', 'in_progress', or 'invoice'.
                  status_id:
                    type:
                    - integer
                    - 'null'
                    description: A foreign key which points to a Status.id. Represents the Status for this RO.
                  customer_id:
                    type: integer
                    description: A foreign key which points to a Customer.id. Represents the Customer for this RO.
                  technician_id:
                    type:
                    - integer
                    - 'null'
                    description: A foreign key which points to a Staff.id. Represents the technician assigned to this RO.
                  advisor_id:
                    type:
                    - integer
                    - 'null'
                    description: A foreign key which points to a Staff.id. Represents the service advisor assigned to this RO.
                  vehicle_id:
                    type: integer
                    description: A foreign key which points to a Vehicle.id. Represents the vehicle for this RO.
                  shop_id:
                    type: integer
                    description: A foreign key which points to a Shop.id. Represents the Shop for this RO.
                  detail:
                    type:
                    - string
                    - 'null'
                    description: Notes made by the staff about this RO.
                  preferred_contact_type:
                    type:
                    - string
                    - 'null'
                    description: How the customer prefers to receive progress updates about this RO. One of 'Waiting', 'Phone', 'Email', 'Text'. More contact types may be added.
                  part_discount_cents:
                    type:
                    - integer
                    - 'null'
                    description: The total amount in cents parts are discounted on this RO, subtracted from the parts subtotal before tax. This will be null if part_discount_percentage is non-null.
                  labort_discount_cents:
                    type:
                    - integer
                    - 'null'
                    description: The total amount in cents labor is discounted on this RO, subtracted from the labor subtotal before tax. This will be null if labor_discount_percentage is non-null.
                  part_discount_percentage:
                    type:
                    - number
                    - 'null'
                    description: RO parts discount in percents. This will be null if part_discount_cents is non-null.
                  labor_discount_percentage:
                    type:
                    - number
                    - 'null'
                    description: RO labors discount in percents. This will be null if labor_discount_cents is non-null.
                  started_at:
                    type:
                    - string
                    - 'null'
                    format: date-time
                    description: The datetime the RO was started and transitioned to 'in_progress' state, or null if the RO is still an estimate.
                  closed_at:
                    type:
                    - string
                    - 'null'
                    format: date-time
                    description: The datetime the RO was closed and transitioned to 'invoice' state, or null if the RO is not yet an invoice.
                  picked_up_at:
                    type:
                    - string
                    - 'null'
                    format: date-time
                    description: The datetime the vehicle was marked as 'picked up', or null if the vehicle is still in the shop.
                  due_in_at:
                    type:
                    - string
                    - 'null'
                    format: date-time
                    description: The datetime the vehicle was scheduled to be dropped off.
                  due_out_at:
                    type:
                    - string
                    - 'null'
                    format: date-time
                    description: The datetime the vehicle was scheduled to be picked up.
                  part_tax_rate:
                    type: number
                    description: The tax rate applied to parts on this RO.
                  labor_tax_rate:
                    type: number
                    description: The tax rate applied to labor on this RO.
                  sublet_tax_rate:
                    type: number
                    description: The tax rate applied to sublets on this RO.
                  hazmat_tax_rate:
                    type: number
                    description: The tax rate applied to hazmats and fees on this RO.
                  taxable:
                    type: boolean
                    description: Determines if tax rates will apply on this RO.
                  customer_concern:
                    type:
                    - string
                    - 'null'
                    description: Represents the reason for Customer's Visit
                  vehicle_use:
                    type:
                    - string
                    - 'null'
                    description: Represents the primary use of vehicle
                  customer_source:
                    type:
                    - string
                    - 'null'
                    description: 'The marketing source of the customer for this RO. Example: "Repeat", "Referral", "Website", etc.'
                  supply_fee_cents:
                    type:
                    - integer
                    - 'null'
                    description: Shop supplies fee, if manually entered. After the RO is closed, reflects the total amount of supply fees from parts and labor after discounts and caps. This may be null if the RO is not yet closed.
                  fleet_po:
                    type:
                    - string
                    - 'null'
                    description: Fleet purchase order number.
                  services:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: The service primary key.
                        title:
                          type: string
                        completed:
                          type: boolean
                          description: True if the service has been marked as completed by a staff member, false otherwise.
                        category_id:
                          type: integer
                        labor_rate_cents:
                          type:
                          - integer
                          - 'null'
                          description: The rate in cents that labor on this service is charged at.
                        fixed_price_cents:
                          type:
                          - integer
                          - 'null'
                          description: The price in cents that this service will be charged at.
                        fixed_price_labor_total_cents:
                          type:
                          - integer
                          - 'null'
                          description: The total price in cents that labors on this service will be charged at.
                        is_fixed_price_service:
                          type: boolean
                          description: Determines if this service has a fixed price.
                        canned_job_id:
                          type:
                          - integer
                          - 'null'
                          description: A foreign key which points to a CannedJob.id. Represents the canned job assigned to this specific service item.
                        comment:
                          type: text
                          description: Service comments.
                        completed_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: The datetime the service was marked completed
                        last_completed_at:
                          type:
                          - string
                          - 'null'
                          format: date-time
                          description: The datetime the service was last marked completed. This may occur if the service had been marked completed then restarted and marked completed again.
                        row_order:
                          type: integer
                          description: Sequence number of service.
                        labors:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The labor primary key.
                              name:
                                type: string
                                description: The name of this labor as it appears on the RO.
                              technician_id:
                                type: integer
                                description: A foreign key which points to a Staff.id. Represents the technician assigned to this specific labor item.
                              taxable:
                                type: boolean
                                description: Determines if labor tax rate will be applied to this labor.
                              hours:
                                type: number
                              row_order:
                                type: integer
                                description: Sequence number of labor.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when labor was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when labor was last updated.
                        parts:
                          type: array
                          description: If you hit a guardrail on a fixed price service, you will get two lines for the part as they could have separate prices
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The part primary key.
                              brand:
                                type: string
                                description: The part brand.
                              description:
                                type: string
                                description: The part description.
                              number:
                                type: string
                                description: The part number.
                              quoted_price_cents:
                                type: integer
                                description: The price of this part that is being sold to the customer in cents per unit.
                                deprecated: true
                              sell_price_cents:
                                type: integer
                                description: The price of this part that is being sold to the customer in cents per unit.
                              cost_cents:
                                type: integer
                                description: The wholesale cost of this part to the shop in cents per unit.
                              part_inventory_id:
                                type: integer
                                description: A foreign key which points to an Inventory.id. Represents the associated inventory and quantity information for this part.
                              quantity:
                                type: number
                                description: The number of units this part line item represents. For parts with excess quantity beyond guardrails, the excess will appear as a separate part line item with its own pricing.
                              taxable:
                                type: boolean
                                description: Determines if part tax rate will be applied to this part.
                              quantity_needed:
                                type: number
                                description: The number of parts needed for service.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when part was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when part was last updated.
                        hazmats:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The hazmat primary key.
                              name:
                                type: string
                                description: The name of this hazmat as it appears on the RO.
                              fee_cents:
                                type: integer
                                description: The price of this fee or hazmat in cents per unit.
                              quantity:
                                type: number
                                description: The number of units.
                              taxable:
                                type: boolean
                                description: Determines if hazmat tax rate will be applied to this hazmat.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when hazmat was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when hazmat was last updated.
                        sublets:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The sublet primary key.
                              name:
                                type: string
                                description: The name of this sublet as it appears on the RO.
                              price_cents:
                                type: integer
                                description: The price in cents of sublet being sold to customer.
                              cost_cents:
                                type: integer
                                description: The amount in cents paid to provider for services.
                              provider:
                                type: string
                                description: The name of the entity providing services for sublet.
                              invoice_number:
                                type: string
                                description: A string which identifies invoice from provider.
                              description:
                                type: string
                                description: The sublet description.
                              invoice_date:
                                type: string
                                format: date-time
                                description: The date when the invoice from provider was created.
                              taxable:
                                type: boolean
                                description: Determines if sublet tax rate will be applied to this sublet.
                              vendor_id:
                                type: integer
                                description: A foreign key which points to a Vendor.id. Represents a vendor associated with this sublet item.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when sublet was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when sublet was last updated.
                        inspections:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The inspection primary key.
                              name:
                                type: string
                                description: The name of this inspection as it appears on the RO.
                              state:
                                type: string
                                description: One of "yellow", "green", "unchecked", "red". More states may be added.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when inspection was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when inspection was last updated.
                        created_at:
                          type: string
                          format: date-time
                          description: The date and time when service was created.
                        updated_at:
                          type: string
                          format: date-time
                          description: The date and time when service was last updated.
                  payments:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: The payment primary key.
                        repair_order_id:
                          type: integer
                          description: A foreign key which points to a RepairOrder.id
                        payment_type:
                          type: string
                          description: 'The display name of the payment type. Payment types are customizable for each shop. Examples: "Other", "Credit Card", "Check", "Cash", "Credit Card - Visa", and "Other - Warranty".'
                        payment_type_details:
                          type: object
                          properties:
                            type:
                              type: string
                            name:
                              type:
                              - string
                              - 'null'
                        notes:
                          type: string
                          description: Staff-entered notes about this payment.
                        amount_cents:
                          type: integer
                          description: The total payment amount, in cents.
                        integrator_tags:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The tag primary key.
                              taggable_type:
                                type: string
                                description: Entity type the tag attached to.
                              taggable_id:
                                type: integer
                                description: Entity identifier the tag attached to.
                              name:
                                type: string
                                description: Tag Name.
                              value:
                                type: string
                                description: Tag Value.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when tag was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when tag was last updated.
                        created_at:
                          type: string
                          format: date-time
                          description: The date and time when payment was created.
                        updated_at:
                          type: string
                          format: date-time
                          description: The date and time when payment was last updated.
                  integrator_tags:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: The tag primary key.
                        taggable_type:
                          type: string
                          description: Entity type the tag attached to.
                        taggable_id:
                          type: integer
                          description: Entity identifier the tag attached to.
                        name:
                          type: string
                          description: Tag Name.
                        value:
                          type: string
                          description: Tag Value.
                        created_at:
                          type: string
                          format: date-time
                          description: The date and time when tag was created.
                        updated_at:
                          type: string
                          format: date-time
                          description: The date and time when tag was last updated.
                  label:
                    type:
                    - object
                    - 'null'
                    properties:
                      id:
                        type: integer
                        description: Unique identifier of this record.
                      text:
                        type:
                        - string
                        - 'null'
                        description: The description of the label.
                      color_code:
                        type:
                        - string
                        - 'null'
                        description: The color code of which the label is represented.
                      row_order:
                        type:
                        - integer
                        - 'null'
                        description: Order of this specific label.
                  created_at:
                    type: string
                    format: date-time
                    description: Date and time when record was created.
                  updated_at:
                    type: string
                    format: date-time
                    description: Date and time when record was last updated.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                initial_assignee_id:
                  type: integer
                  description: A foreign key that points to a Staff.id that will be initially assigned the RO.
                send_estimate_email:
                  type: boolean
                  description: True if an email should be sent to this RO’s customer’s email address, or false otherwise. This parameter will be ignored if the customer does not have an 

# --- truncated at 32 KB (251 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/shop-ware/refs/heads/main/openapi/shop-ware-repair-orders-api-openapi.yml