Decisiv Operations API

The Operations API from Decisiv — 1 operation(s) for operations.

Operations 1

GET /service_management/{srm_account_id}/v1/cases/{case_id}/applicable_operations List all applicable operations for a specific case in the requested account #

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/decisiv-operations-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

decisiv-operations-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 0.48.24
  termsOfService: https://www.decisiv.com/terms-of-use
  contact:
    name: Decisiv Support
    email: support@decisiv.com
    url: https://www.decisiv.com
  title: Service Management Operations API
  description: The **Decisiv SRM Gateway** `Service Management` module provides the API functionality for managing an asset's case lifecycle from a Service Providers perspective.
  license:
    name: Proprietary
    identifier: proprietary
    url: https://www.decisiv.com/terms-of-use/
servers:
- url: https://srm-api.staging.decisivapps.com
- url: https://srm-api.decisivapps.com
security:
- OAuth2AuthorizationCode: []
  AccessToken: []
- OAuth2Password: []
  AccessToken: []
tags:
- name: Operations
paths:
  /service_management/{srm_account_id}/v1/cases/{case_id}/applicable_operations:
    get:
      summary: List all applicable operations for a specific case in the requested account
      tags:
      - Operations
      parameters:
      - name: srm_account_id
        in: path
        description: The account ID for SRM
        required: true
        schema:
          type: string
      - name: case_id
        in: path
        schema:
          type: string
          format: uuid
        description: The case UUID
        required: true
      - name: filter[opcode]
        in: query
        required: true
        schema:
          type: string
          minLength: 3
        description: Filters operations for the given opcode, using exact matching search
      - name: page[number]
        in: query
        required: false
        schema:
          type: integer
          default: 1
          minimum: 1
        description: Sets the desired `page` when encountering larger result sets
      - name: page[size]
        in: query
        required: false
        schema:
          type: integer
          default: 25
          minimum: 1
        description: Sets the desired maximum number of results per page
      responses:
        '200':
          description: Returns list of Applicable Operations for a case
          content:
            application/vnd.api+json:
              example:
                data:
                - id: T3789-0-04
                  type: applicable_operations
                  attributes:
                    name: All Engines All Years All Models All Makes for Air Dryer Cartridge, Replacement
                    description: Default variation for Air Dryer Cartridge, Replacement
                    opcode: T3789-0-04
                    notes: A note added to the operation
                    pricing:
                      estimated_total: '100.0'
                      fixed_total: null
                      labor:
                        estimated_total: '50.0'
                      parts:
                        estimated_total: 50
                        fixed_total: null
                    labor:
                      time: '2.0'
                      skill_level: A
                    vmrs:
                      code_key: '33'
                      code_key_name: Component Code
                      code: 001-001-000
                      description: Component Code description
                    parts:
                    - number: AB1098
                      name: Replacement for Air Dryer Cartridge
                      quantity: 1
                      unit_price: '353.28'
                    price_code: SR37TYP
              schema:
                $ref: '#/components/schemas/applicable_operations'
        '400':
          description: This response may occur when an invalid request has been provided to the server.  The request may be corrected by the consumer and resubmitted.
          content:
            application/vnd.api+json:
              example:
                errors:
                - title: Filter not allowed
                  detail: '''{{filter_name}}'' is not allowed. Valid filters: {{filters_list}}'
                  code: decisiv:filters:001
                  status: '400'
                  source:
                    parameter: filter[filter_name]
              schema:
                $ref: '#/components/schemas/errors_response'
        '401':
          description: This response may occur when the access token provided within the Authorization token has expired.
          content:
            application/vnd.api+json:
              example:
                errors:
                - title: Access unauthorized
                  detail: Access unauthorized
                  code: decisiv::access_token:001
                  status: '401'
              schema:
                $ref: '#/components/schemas/errors_response'
        '403':
          description: This response may occur when the authenticated user embedded within the Authorization header does not have access to the requested resource.
          content:
            application/vnd.api+json:
              example:
                errors:
                - title: Forbidden
                  detail: User does not have permission to perform this action on the requested resource(s)
                  code: decisiv:access:001
                  status: '403'
              schema:
                $ref: '#/components/schemas/errors_response'
        '404':
          description: This response may occur when the requested resource is not found.
          content:
            application/vnd.api+json:
              example:
                errors:
                - title: Record not found
                  detail: The requested record or one of its relationships could not be found
                  code: '404'
                  status: '404'
              schema:
                $ref: '#/components/schemas/errors_response'
        '424':
          description: This response may occur when there is an unresolved data dependency or configuration required inside of the Decisiv Platform preventing access to the requested action.
          content:
            application/vnd.api+json:
              example:
                errors:
                - title: Failed Dependency
                  detail: Failed Dependency
                  code: '424'
                  status: '424'
              schema:
                $ref: '#/components/schemas/errors_response'
        '504':
          description: This response may occur when there is an unexpected system timeout.
          content:
            application/vnd.api+json:
              example:
                errors:
                - code: '504'
                  detail: Gateway timeout error
                  status: '504'
                  title: Gateway timeout error
              schema:
                $ref: '#/components/schemas/errors_response'
      operationId: getServiceManagementBySrmAccountIdV1CasesByCaseIdApplicableOperations
      x-operation-id-source: derived
components:
  schemas:
    errors_response:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/error_response'
      required:
      - errors
    applicable_operations:
      type: object
      required:
      - data
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/applicable_operation'
        meta:
          type: object
    error_response:
      type: object
      properties:
        status:
          type: string
        title:
          type: string
        detail:
          type:
          - string
          - 'null'
        code:
          type:
          - string
          - 'null'
        source:
          type: object
          properties:
            parameter:
              type:
              - string
              - 'null'
            pointer:
              type:
              - string
              - 'null'
        links:
          type: object
          description: Links related to this error (e.g. documentation reference).
          additionalProperties:
            type: string
            format: uri
      required:
      - status
      - title
    applicable_operation:
      type: object
      required:
      - data
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              format: uuid
            type:
              type: string
            attributes:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the applicable operation
                description:
                  type: string
                  description: Description of the applicable operation
                opcode:
                  type: string
                  description: Unique operation code
                price_code:
                  type: string
                  description: Price code information
                notes:
                  type: string
                  description: Notes added to the operation
                pricing:
                  type: object
                  description: Pricing information and estimates for the operation
                  properties:
                    estimated_total:
                      type:
                      - string
                      - 'null'
                      format: decimal
                      description: Estimated total for the operation (parts costs + labor costs). Null when the operation has a fixed price — `fixed_total` is populated instead.
                    fixed_total:
                      type:
                      - number
                      - 'null'
                      description: Fixed total when the operation has a fixed price. Null when the operation is estimated — `estimated_total` is populated instead.
                    parts:
                      type: object
                      description: Pricing information and estimates for the operation parts
                      properties:
                        estimated_total:
                          type:
                          - number
                          - 'null'
                          description: Estimated total for the operation parts. Null when the parts have a fixed price — `parts.fixed_total` is populated instead.
                        fixed_total:
                          type:
                          - number
                          - 'null'
                          description: Fixed total when the parts have a fixed price. Null when the parts are estimated — `parts.estimated_total` is populated instead.
                labor:
                  type: object
                  description: Information and estimates for the operation labor
                  properties:
                    estimated_total:
                      type: string
                      description: Estimated total for the operation labor. The skill level times the quantity of hours
                    time:
                      type: string
                      description: The value in hours of the operation
                    skill_level:
                      type: string
                      description: The value of the hour for the labor
                vmrs:
                  type: object
                  description: VMRS Code Keys for the operation
                  properties:
                    code_key:
                      type: string
                      description: The VMRS Code Key
                    code_key_name:
                      type: string
                      description: The VMRS Code Key name
                    code:
                      type: string
                      description: VMRS Code Key 33 coding for the operation
                    description:
                      type: string
                      description: The VMRS Code Key description
                parts:
                  type: array
                  description: List of parts associated with applicable operation
                  items:
                    type: object
                    properties:
                      number:
                        type: string
                        description: Part number of material associated with applicable operation
                      name:
                        type: string
                        description: Part name of materials associated with applicable operation
                      quantity:
                        type: integer
                        description: Count of specific parts associated with applicable operation
                      unit_price:
                        type: string
                        description: Unit cost of each part associated with the applicable operation
                additional_charges:
                  type:
                  - array
                  - 'null'
                  description: Additional charges associated with the operation; null when none are present.
                  items:
                    type: object
                    properties:
                      category:
                        type:
                        - string
                        - 'null'
                        description: Category of the additional charge
                      code:
                        type:
                        - string
                        - 'null'
                        description: Code of the additional charge
                      description:
                        type:
                        - string
                        - 'null'
                        description: Description of the additional charge
                      amount:
                        type:
                        - string
                        - 'null'
                        format: decimal
                        description: Amount of the additional charge
              required:
              - name
              - opcode
          required:
          - attributes
          - type
          - id
  securitySchemes:
    AccessToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
    OAuth2AuthorizationCode:
      type: oauth2
      description: OAuth 2.0 Authorization Code flow. This is the required flow for new integrations. See https://api-docs.decisiv.net/docs/api/oauth/
      flows:
        authorizationCode:
          authorizationUrl: https://login.decisiv.net/auth/api_gateway
          tokenUrl: https://login.decisiv.net/oauth/token
          refreshUrl: https://login.decisiv.net/oauth/token
          scopes: {}
    OAuth2Password:
      type: oauth2
      description: '**Deprecated.** OAuth 2.0 Password flow. New integrations must use the Authorization Code flow (`OAuth2AuthorizationCode`); this flow remains available only during the migration window and will be removed in a future release. See https://api-docs.decisiv.net/docs/api/oauth/'
      flows:
        password:
          tokenUrl: https://login.decisiv.net/oauth/token
          scopes: {}