Skip to main content
Alerting & Response/On-Call
POSTOnCallSince 1.0SynchronousAuth Required

ResolveOnCallConflicts

Analyze conflicts and return prioritized resolution suggestions

Execution Availability

Try It Out

Submit a mock request using the current auth context and example-driven inputs.

Request Inputs

Body Fields

  • conflictsListRequired

    List of conflicts to resolve

    Example: (nested array)

    • typeString

      Category of the detected conflict

      Example: overlap

    • userIdString

      User ID involved in the conflict

      Example: user-abc123

    • userNameString

      Display name of the user involved in the conflict

      Example: Alice Smith

    • detailsString

      Additional context about the conflict

      Example: Overlapping shifts on 2024-06-01

  • allSchedulesListRequired

    All schedules relevant to the conflict resolution analysis

    Example: (nested array)

    • uuidString

      Unique identifier of the schedule

      Example: sched-00112233

    • nameString

      Human-readable name of the schedule

      Example: Platform On-Call

    • descriptionString

      Brief description of the schedule purpose

      Example: 24x7 platform on-call rotation

    • timezoneString

      IANA timezone name for the schedule

      Example: Asia/Shanghai

    • rotationTypeString

      Rotation type: daily, weekly, or custom

      Example: weekly

    • shiftDurationString

      Duration of each shift as a Go duration string

      Example: 168h

    • membersList

      Ordered list of members participating in the rotation

      Example: (nested array)

      • userIdString

        User identifier of the on-call member

        Example: user-abc123

      • userNameString

        Display name of the on-call member

        Example: Alice Smith

      • orderInteger

        Rotation order position of the member within the schedule

        Example: 1

    • startDateString

      Timestamp when the schedule rotation begins

      Example: 2026-01-15T08:00:00Z

    • createDateString

      Timestamp when the schedule was created

      Example: 2026-01-15T08:00:00Z

    • lastOpDateString

      Timestamp of the last modification to the schedule

      Example: 2026-01-15T08:00:00Z

  • strategyStringRequired

    Resolution strategy to apply (e.g. auto, manual)

    Example: auto

Responses

200 OK

On success, this API returns the following response structure.

  • totalConflictsInteger

    Total number of conflicts found during analysis

    Example: 3

  • suggestionsList

    Ordered list of adjustment suggestions for resolving conflicts

    Example: (nested array)

    • idString

      Unique identifier of this adjustment suggestion

      Example: sugg-11223344

    • typeString

      Category type of the suggested adjustment

      Example: member_swap

    • descriptionString

      Human-readable explanation of the proposed adjustment

      Example: Swap shifts between Alice and Bob to resolve overlap

    • targetConflictsList

      IDs of conflicts this suggestion addresses

      Example: item1,item2

    • changesList

      List of schedule changes included in this suggestion

      Example: (nested array)

      • scheduleUuidString

        UUID of the schedule being changed

        Example: sched-00112233

      • scheduleNameString

        Name of the schedule being changed

        Example: Platform On-Call

      • changeTypeString

        Type of change applied to the schedule

        Example: member_swap

      • detailsLinkedHashMap

        Detailed information entries

        Example: (nested object)

      • beforeString

        Serialized state of the schedule before the change

        Example: user-abc123

      • afterString

        Serialized state of the schedule after the change

        Example: user-xyz789

    • impactObject

      Impact assessment scores for this suggestion

      • fairnessScoreLong

        Score reflecting fairness of shift distribution (0-1)

        Example: 0.85

      • coverageScoreLong

        Score reflecting shift coverage completeness (0-1)

        Example: 0.92

      • minimalChangeScoreLong

        Score reflecting how minimal the proposed changes are (0-1)

        Example: 0.78

      • overallScoreLong

        Aggregate score combining all impact dimensions (0-1)

        Example: 0.85

    • priorityInteger

      Priority ranking of this suggestion (lower is higher priority)

      Example: 1

  • strategyString

    Resolution strategy used to generate suggestions

    Example: auto

  • generatedAtString

    Timestamp when this resolution result was generated

    Example: 2026-01-15T08:00:00Z

Endpoint

POST/api/v1/oncall/conflicts/resolve

/api/v1/oncall/conflicts/resolve

Operation ID

ResolveOnCallConflicts

Permalink

Request Example

curl -X POST '{host}/api/v1/oncall/conflicts/resolve' -H 'Authorization: Bearer {token}' -H 'Content-Type: application/json' -d '{"conflicts":"(nested array)","allSchedules":"(nested array)","strategy":"auto"}'

Response Example

200
{
  "totalConflicts": 3,
  "suggestions": [
    {}
  ],
  "strategy": "auto",
  "generatedAt": "example"
}

Change History

This API has no change history records yet.

View all change history