Shop-Ware Canned Jobs API

The Canned Jobs API from Shop-Ware — 2 operation(s) for canned jobs.

Operations 2

GET /api/v1/tenants/{tenant_id}/canned_jobs Get a list of all canned jobs #
GET /api/v1/tenants/{tenant_id}/canned_jobs/{id} Get a specific canned job by ID #

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-canned-jobs-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-canned-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: V1 Canned Jobs API
  version: v1
  contact:
    name: API Support
    email: support@shop-ware.com
security:
- api_partner_id: []
  api_secret: []
tags:
- name: Canned Jobs
paths:
  /api/v1/tenants/{tenant_id}/canned_jobs:
    parameters:
    - name: tenant_id
      in: path
      required: true
      example: '1'
      schema:
        type: integer
    get:
      summary: Get a list of all canned jobs
      tags:
      - Canned Jobs
      parameters:
      - name: page
        in: query
        required: false
        example: '1'
        schema:
          type: integer
      - name: per_page
        in: query
        required: false
        example: '30'
        schema:
          type: integer
      - name: updated_after
        in: query
        required: false
        example: 2022-10-24T12%3A00%3A00%2B08%3A00
        schema:
          type: string
      responses:
        '200':
          description: successful
          content:
            application/json:
              examples:
                successful:
                  value:
                    results:
                    - id: 1
                      created_at: '2026-06-09T14:21:46Z'
                      updated_at: '2026-06-09T14:21:46Z'
                      title: Fake Canned Job Name
                      all_vehicles: false
                      frequency: 3360
                      category_id: 4
                      auto_applied: false
                      shop_id: 2
                      fixed_price_cents: null
                      labor_rate_cents: 10000
                      is_fixed_price_service: false
                      optimizer_enabled: true
                      ai_parts_matrix_enabled: true
                      integrator_tags:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        taggable_type: CannedJob
                        taggable_id: 1
                        name: 987 zyx
                        value: abc 123
                      sublets:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        name: MFD Repair
                        price_cents: 70000
                        taxable: true
                      inspections:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        name: Confirm proper operation of instruments and warning lights
                      vehicles:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        year: '2006'
                        make: Toyota
                        model: Prius
                        engine: 1.5L L4 (1NZFXE) ELECTRIC/GAS FI
                      hazmats:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        name: Qt Motor Oil Recycling
                        fee_cents: 75
                        taxable: true
                        quantity: 4.0
                      parts:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        part_inventory_id: 1
                        taxable: true
                        quoted_price_cents: 10000
                        msrp_cents: 10000
                        quantity: 4.0
                      labors:
                      - id: 1
                        created_at: '2026-06-09T14:21:46Z'
                        updated_at: '2026-06-09T14:21:46Z'
                        name: Drain and fill engine oil
                        taxable: true
                        hours: 0.1
                    limit: 1
                    limited: false
                    total_count: 1
                    current_page: 1
                    total_pages: 1
              schema:
                type: object
                properties:
                  results:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: Unique identifier of this record.
                        title:
                          type: string
                          description: Labor title.
                        category_id:
                          type: integer
                          description: A foreign key that points to the Category that this CannedJob belongs to.
                        frequency:
                          type: number
                          description: The popularity of this canned job. The most used canned jobs will have the highest frequency.
                        all_vehicles:
                          type: boolean
                          description: True if this canned job applies to all vehicles (rather than only specific vehicles), false otherwise.
                        auto_applied:
                          type: boolean
                          description: True if this canned job should be applied to every new estimate automatically, false otherwise.
                        optimizer_enabled:
                          type: boolean
                          description: True if the AI Parts Matrix should be used when pricing parts on this canned job, false otherwise.
                          deprecated: true
                        ai_parts_matrix_enabled:
                          type: boolean
                          description: True if the AI Parts Matrix should be used when pricing parts on this canned job, false otherwise.
                        shop_id:
                          type: integer
                          description: A foreign key that points to the Shop that this CannedJob belongs to
                        labor_rate_cents:
                          type:
                          - integer
                          - 'null'
                          description: Labor rate in cents
                        fixed_price_cents:
                          type:
                          - integer
                          - 'null'
                          description: The price in cents that this service will be charged at.
                        is_fixed_price_service:
                          type: boolean
                          description: Determines if this service has a fixed price.
                        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 will appear on the RO.
                              price_cents:
                                type: integer
                                description: The price in cents of sublet being sold to customer.
                              taxable:
                                type: boolean
                                description: Determines if sublet tax rate will be applied to this sublet.
                              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.
                        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 will appear 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.
                        parts:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The part primary key.
                              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.
                              quoted_price_cents:
                                type:
                                - integer
                                - 'null'
                                description: MSRP in cents.
                                deprecated: true
                              msrp_cents:
                                type:
                                - integer
                                - 'null'
                                description: MSRP in cents.
                              taxable:
                                type: boolean
                                description: Determines if part tax rate will be applied to this part.
                              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.
                        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.
                        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 will appear on the RO.
                              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.
                        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 will appear on the RO.
                              taxable:
                                type: boolean
                                description: Determines if labor tax rate will be applied to this labor.
                              hours:
                                type: number
                              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.
                        vehicles:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: integer
                                description: The vehicle primary key.
                              year:
                                type: string
                                description: Vehicle year.
                              make:
                                type: string
                                description: Vehicle make.
                              model:
                                type: string
                                description: Vehicle model.
                              engine:
                                type: string
                                description: Vehicle engine.
                              created_at:
                                type: string
                                format: date-time
                                description: The date and time when vehicle was created.
                              updated_at:
                                type: string
                                format: date-time
                                description: The date and time when vehicle was last updated.
                        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.
                  limit:
                    type: integer
                  limited:
                    type: boolean
                  total_count:
                    type: integer
                  current_page:
                    type: integer
                  total_pages:
                    type: integer
      operationId: getApiV1TenantsByTenantIdCannedJobs
      x-operation-id-source: derived
  /api/v1/tenants/{tenant_id}/canned_jobs/{id}:
    parameters:
    - name: tenant_id
      in: path
      required: true
      example: '1'
      schema:
        type: integer
    - name: id
      in: path
      required: true
      example: '1'
      schema:
        type: integer
    get:
      summary: Get a specific canned job by ID
      tags:
      - Canned Jobs
      responses:
        '200':
          description: successful
          content:
            application/json:
              examples:
                successful:
                  value:
                    id: 1
                    created_at: '2026-06-09T14:21:49Z'
                    updated_at: '2026-06-09T14:21:49Z'
                    title: Fake Canned Job Name
                    all_vehicles: false
                    frequency: 3360
                    category_id: 4
                    auto_applied: false
                    shop_id: 2
                    fixed_price_cents: null
                    labor_rate_cents: 10000
                    is_fixed_price_service: false
                    optimizer_enabled: true
                    ai_parts_matrix_enabled: true
                    integrator_tags:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      taggable_type: CannedJob
                      taggable_id: 1
                      name: 987 zyx
                      value: abc 123
                    sublets:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      name: MFD Repair
                      price_cents: 70000
                      taxable: true
                    inspections:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      name: Confirm proper operation of instruments and warning lights
                    vehicles:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      year: '2006'
                      make: Toyota
                      model: Prius
                      engine: 1.5L L4 (1NZFXE) ELECTRIC/GAS FI
                    hazmats:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      name: Qt Motor Oil Recycling
                      fee_cents: 75
                      taxable: true
                      quantity: 4.0
                    parts:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      part_inventory_id: 1
                      taxable: true
                      quoted_price_cents: 10000
                      msrp_cents: 10000
                      quantity: 4.0
                    labors:
                    - id: 1
                      created_at: '2026-06-09T14:21:49Z'
                      updated_at: '2026-06-09T14:21:49Z'
                      name: Drain and fill engine oil
                      taxable: true
                      hours: 0.1
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    description: Unique identifier of this record.
                  title:
                    type: string
                    description: Labor title.
                  category_id:
                    type: integer
                    description: A foreign key that points to the Category that this CannedJob belongs to.
                  frequency:
                    type: number
                    description: The popularity of this canned job. The most used canned jobs will have the highest frequency.
                  all_vehicles:
                    type: boolean
                    description: True if this canned job applies to all vehicles (rather than only specific vehicles), false otherwise.
                  auto_applied:
                    type: boolean
                    description: True if this canned job should be applied to every new estimate automatically, false otherwise.
                  optimizer_enabled:
                    type: boolean
                    description: True if the AI Parts Matrix should be used when pricing parts on this canned job, false otherwise.
                    deprecated: true
                  ai_parts_matrix_enabled:
                    type: boolean
                    description: True if the AI Parts Matrix should be used when pricing parts on this canned job, false otherwise.
                  shop_id:
                    type: integer
                    description: A foreign key that points to the Shop that this CannedJob belongs to
                  labor_rate_cents:
                    type:
                    - integer
                    - 'null'
                    description: Labor rate in cents
                  fixed_price_cents:
                    type:
                    - integer
                    - 'null'
                    description: The price in cents that this service will be charged at.
                  is_fixed_price_service:
                    type: boolean
                    description: Determines if this service has a fixed price.
                  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 will appear on the RO.
                        price_cents:
                          type: integer
                          description: The price in cents of sublet being sold to customer.
                        taxable:
                          type: boolean
                          description: Determines if sublet tax rate will be applied to this sublet.
                        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.
                  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 will appear 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.
                  parts:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: The part primary key.
                        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.
                        quoted_price_cents:
                          type:
                          - integer
                          - 'null'
                          description: MSRP in cents.
                          deprecated: true
                        msrp_cents:
                          type:
                          - integer
                          - 'null'
                          description: MSRP in cents.
                        taxable:
                          type: boolean
                          description: Determines if part tax rate will be applied to this part.
                        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.
                  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.
                  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 will appear on the RO.
                        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.
                  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 will appear on the RO.
                        taxable:
                          type: boolean
                          description: Determines if labor tax rate will be applied to this labor.
                        hours:
                          type: number
                        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.
                  vehicles:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: integer
                          description: The vehicle primary key.
                        year:
                          type: string
                          description: Vehicle year.
                        make:
                          type: string
                          description: Vehicle make.
                        model:
                          type: string
                          description: Vehicle model.
                        engine:
                          type: string
                          description: Vehicle engine.
                        created_at:
                          type: string
                          format: date-time
                          description: The date and time when vehicle was created.
                        updated_at:
                          type: string
                          format: date-time
                          description: The date and time when vehicle was last updated.
                  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.
      operationId: getApiV1TenantsByTenantIdCannedJobsById
      x-operation-id-source: derived
components:
  securitySchemes:
    api_partner_id:
      type: apiKey
      name: X-Api-Partner-Id
      in: header
    api_secret:
      type: apiKey
      name: X-Api-Secret
      in: header