Decisiv Case Line Items Technician Stories API

The Case Line Items Technician Stories API from Decisiv — 2 operation(s) for case line items technician stories.

Operations 3

GET /service_management/{srm_account_id}/v1/cases/{case_id}/line_items/{line_item_id}/technician_stories List all the technician stories for the selected line item
POST /service_management/{srm_account_id}/v1/cases/{case_id}/line_items/{line_item_id}/technician_stories Creates a technician story for the line item
GET /service_management/{srm_account_id}/v1/cases/{case_id}/line_items/{line_item_id}/technician_stories/{id} List all the technician stories for the selected line item

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-case-line-items-technician-stories-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-case-line-items-technician-stories-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 Case Line Items Technician Stories 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: Case Line Items Technician Stories
paths:
  /service_management/{srm_account_id}/v1/cases/{case_id}/line_items/{line_item_id}/technician_stories:
    get:
      summary: List all the technician stories for the selected line item
      tags:
      - Case Line Items Technician Stories
      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: line_item_id
        in: path
        schema:
          type: string
          format: uuid
        description: The line item UUID
        required: true
      - 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 technician stories for the line item
          content:
            application/vnd.api+json:
              example:
                data:
                - id: b2610b45-a2e1-4abf-ad21-7f820bca4923
                  type: technician_stories
                  attributes:
                    content: Here goes the technician story that can be many lines long
                    created_at: 2025-04-10 13:28:31 UTC
              schema:
                $ref: '#/components/schemas/technician_story'
        '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'
        '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'
    post:
      summary: Creates a technician story for the line item
      tags:
      - Case Line Items Technician Stories
      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: line_item_id
        in: path
        schema:
          type: string
          format: uuid
        description: The line item UUID
        required: true
      responses:
        '201':
          description: Successful creation of Technician Story
          content:
            application/vnd.api+json:
              example:
                data:
                  id: b2610b45-a2e1-4abf-ad21-7f820bca4923
                  type: technician_stories
                  attributes:
                    content: Here goes the technician story that can be many lines long
                    created_at: 2025-04-10 13:28:31 UTC
              schema:
                $ref: '#/components/schemas/technician_story'
        '400':
          description: Invalid resource error
          content:
            application/vnd.api+json:
              example:
                errors:
                - status: '400'
                  code: decisiv:resource:002
                  title: Invalid JSON:API Resource specified in request
                  detail: '''{{invalid_resource}}'' is an invalid resource'
                  source: /data/type
              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:
                - status: '404'
                  code: decisiv:resource:001
                  title: Resource Identifier - Not Found
                  detail: The parent resource could not be found
                  source:
                    parameter: id
              schema:
                $ref: '#/components/schemas/errors_response'
        '422':
          description: Required key not populated error / Required key not provided error
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/errors_response'
              examples:
                Required key not populated error:
                  value:
                    errors:
                    - status: '422'
                      code: decisiv:request_attributes:002
                      title: Missing required attribute value
                      detail: Required key must be populated
                      source: /data/attributes/content
                Required key not provided error:
                  value:
                    errors:
                    - status: '422'
                      code: decisiv:request_attributes:001
                      title: Missing required attribute key
                      detail: Required key not provided in request body
                      source: /data/attributes/content
        '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'
      requestBody:
        content:
          application/vnd.api+json:
            schema:
              $ref: '#/components/schemas/create_technician_story'
            examples:
              Create Technician Story:
                value:
                  data:
                    type: technician_stories
                    attributes:
                      content: Technician story description
  /service_management/{srm_account_id}/v1/cases/{case_id}/line_items/{line_item_id}/technician_stories/{id}:
    get:
      summary: List all the technician stories for the selected line item
      tags:
      - Case Line Items Technician Stories
      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: line_item_id
        in: path
        schema:
          type: string
          format: uuid
        description: The line item UUID
        required: true
      - name: id
        in: path
        schema:
          type: string
          format: uuid
        description: The resource UUID
        required: true
      responses:
        '200':
          description: Returns one technician story for the line item
          content:
            application/vnd.api+json:
              example:
                data:
                  id: b2610b45-a2e1-4abf-ad21-7f820bca4923
                  type: technician_stories
                  attributes:
                    content: Here goes the technician story that can be many lines long
                    created_at: 2025-04-10 13:28:31 UTC
              schema:
                $ref: '#/components/schemas/technician_story'
        '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'
        '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'
components:
  schemas:
    create_technician_story:
      type: object
      required:
      - data
      properties:
        data:
          type: object
          properties:
            type:
              type: string
              enum:
              - technician_stories
            attributes:
              type: object
              required:
              - content
              properties:
                content:
                  type: string
                  description: The story itself
                  minLength: 1
                  maxLength: 5000
                  examples:
                  - This is a story from the technician
                created_at:
                  type: string
                  description: '`ISO 8601` timestamp indicating when the technician story was created'
                  format: date-time
          required:
          - type
          - attributes
    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
    errors_response:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/error_response'
      required:
      - errors
    technician_story:
      type: object
      required:
      - data
      properties:
        data:
          type: object
          properties:
            id:
              type: string
              format: uuid
            type:
              type: string
              enum:
              - technician_stories
            attributes:
              type: object
              properties:
                content:
                  type: string
                  description: The story itself
                  minLength: 1
                  maxLength: 5000
                  examples:
                  - This is a story from the technician
                created_at:
                  type: string
                  description: '`ISO 8601` timestamp indicating when the technician story was created'
                  format: date-time
          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: {}