Support API

Comprehensive support ticket management API enabling automated ticket creation, status tracking, escalation management, and integration with helpdesk systems for streamlined customer support operations.


🎯 Support API Overview

The SOLVEFORCE Support API provides programmatic access to our customer support system, enabling organizations to integrate support workflows with their existing business systems, automate ticket management, and provide seamless customer service experiences.

🌟 Core Support API Features

Ticket Management:

  • Create, update, and resolve support tickets programmatically
  • Automated ticket routing based on categories and severity levels
  • Real-time ticket status tracking and notifications
  • Bulk ticket operations for efficient management
  • Custom field support for organization-specific requirements

Communication and Collaboration:

  • Add comments and attachments to support tickets
  • Internal notes and customer-facing communications
  • Email integration and notification management
  • Multi-language support for global operations
  • Real-time chat and escalation capabilities

Analytics and Reporting:

  • Support metrics and performance analytics
  • SLA compliance monitoring and reporting
  • Customer satisfaction tracking and surveys
  • Agent performance and workload analytics
  • Custom reporting and data export capabilities

🎫 Ticket Management Operations

πŸ“ Creating Support Tickets

Create New Ticket:

POST /v1/support/tickets

Request Body:

{
  "title": "Network connectivity issues in San Francisco office",
  "description": "Users in our SF office are experiencing intermittent connectivity issues with our MPLS connection. The issue started at approximately 2:00 PM PST and affects roughly 50% of users.",
  "customer_id": "cust_1234567890",
  "contact": {
    "name": "John Smith",
    "email": "john.smith@example.com", 
    "phone": "+1-555-123-4567",
    "role": "IT Manager"
  },
  "category": "network",
  "subcategory": "connectivity",
  "priority": "high",
  "severity": "business_impacting",
  "service_affected": "mpls_network",
  "location": {
    "site_id": "site_sf_001",
    "address": "123 Market St, San Francisco, CA 94105",
    "timezone": "America/Los_Angeles"
  },
  "metadata": {
    "affected_users": 25,
    "business_impact": "50% productivity reduction",
    "troubleshooting_attempted": [
      "Restarted network equipment",
      "Verified cable connections",
      "Contacted ISP for circuit status"
    ]
  },
  "attachments": [
    {
      "filename": "network_diagnostics.pdf",
      "content_type": "application/pdf",
      "size": 245760,
      "data": "base64_encoded_file_data"
    }
  ]
}

Response:

{
  "ticket": {
    "id": "ticket_abc123def456",
    "number": "SF-2024-001234",
    "title": "Network connectivity issues in San Francisco office",
    "status": "open",
    "priority": "high",
    "severity": "business_impacting",
    "category": "network",
    "subcategory": "connectivity",
    "created_at": "2024-11-01T14:30:00Z",
    "updated_at": "2024-11-01T14:30:00Z",
    "customer_id": "cust_1234567890",
    "assigned_to": {
      "agent_id": "agent_tech_001",
      "name": "Sarah Johnson",
      "email": "sarah.johnson@solveforce.com",
      "specialization": "network_infrastructure"
    },
    "contact": {
      "name": "John Smith",
      "email": "john.smith@example.com",
      "phone": "+1-555-123-4567",
      "role": "IT Manager"
    },
    "sla": {
      "response_time": "2 hours",
      "resolution_time": "8 hours",
      "response_due": "2024-11-01T16:30:00Z",
      "resolution_due": "2024-11-01T22:30:00Z"
    },
    "urls": {
      "self": "https://api.solveforce.com/v1/support/tickets/ticket_abc123def456",
      "customer_portal": "https://support.solveforce.com/tickets/SF-2024-001234"
    }
  }
}

πŸ“‹ Retrieving Tickets

Get Single Ticket:

GET /v1/support/tickets/{ticket_id}

Get Customer Tickets:

GET /v1/support/tickets?customer_id=cust_1234567890&status=open&limit=50

Advanced Ticket Search:

GET /v1/support/tickets/search

Query Parameters:

{
  "filters": {
    "customer_id": "cust_1234567890",
    "status": ["open", "in_progress"],
    "priority": ["high", "critical"],
    "created_after": "2024-10-01T00:00:00Z",
    "category": "network",
    "assigned_to": "agent_tech_001"
  },
  "sort": {
    "field": "created_at",
    "order": "desc"
  },
  "pagination": {
    "page": 1,
    "limit": 25
  }
}

Response:

{
  "tickets": [
    {
      "id": "ticket_abc123def456",
      "number": "SF-2024-001234",
      "title": "Network connectivity issues in San Francisco office",
      "status": "in_progress",
      "priority": "high",
      "created_at": "2024-11-01T14:30:00Z",
      "updated_at": "2024-11-01T15:45:00Z",
      "assigned_to": {
        "name": "Sarah Johnson",
        "email": "sarah.johnson@solveforce.com"
      },
      "sla_status": {
        "response_met": true,
        "resolution_due": "2024-11-01T22:30:00Z",
        "time_remaining": "6h 45m"
      }
    }
  ],
  "pagination": {
    "total": 1,
    "page": 1,
    "limit": 25,
    "pages": 1
  }
}

✏️ Updating Tickets

Update Ticket Status and Information:

PUT /v1/support/tickets/{ticket_id}

Request Body:

{
  "status": "in_progress",
  "priority": "critical",
  "assigned_to": "agent_network_specialist",
  "estimated_resolution": "2024-11-01T20:00:00Z",
  "internal_notes": "Escalated to network engineering team. Circuit provider confirms equipment failure at local POP.",
  "customer_update": "We have identified the issue and are working with our circuit provider to resolve the equipment failure. We expect resolution within 6 hours.",
  "metadata": {
    "root_cause": "Provider equipment failure",
    "escalation_level": 2,
    "vendor_ticket": "ISP-2024-567890"
  }
}

Response:

{
  "ticket": {
    "id": "ticket_abc123def456",
    "number": "SF-2024-001234",
    "status": "in_progress",
    "priority": "critical",
    "updated_at": "2024-11-01T15:45:00Z",
    "assigned_to": {
      "agent_id": "agent_network_specialist",
      "name": "Michael Chen",
      "email": "michael.chen@solveforce.com",
      "specialization": "network_engineering"
    },
    "sla": {
      "response_met": true,
      "resolution_due": "2024-11-01T20:00:00Z",
      "escalated": true,
      "escalation_reason": "Priority upgraded to critical"
    }
  }
}

πŸ’¬ Communication and Comments

πŸ“ Adding Comments and Updates

Add Comment to Ticket:

POST /v1/support/tickets/{ticket_id}/comments

Request Body:

{
  "content": "Circuit provider has replaced the failed equipment. Testing connectivity now. Will provide update within 30 minutes.",
  "type": "customer_update",
  "visibility": "customer",
  "author": {
    "type": "agent",
    "id": "agent_network_specialist",
    "name": "Michael Chen"
  },
  "attachments": [
    {
      "filename": "circuit_test_results.png",
      "content_type": "image/png",
      "data": "base64_encoded_image_data"
    }
  ],
  "metadata": {
    "update_type": "progress_update",
    "next_update_eta": "2024-11-01T16:30:00Z"
  }
}

Response:

{
  "comment": {
    "id": "comment_xyz789abc123",
    "ticket_id": "ticket_abc123def456",
    "content": "Circuit provider has replaced the failed equipment. Testing connectivity now. Will provide update within 30 minutes.",
    "type": "customer_update",
    "visibility": "customer",
    "created_at": "2024-11-01T16:00:00Z",
    "author": {
      "type": "agent",
      "id": "agent_network_specialist",
      "name": "Michael Chen",
      "email": "michael.chen@solveforce.com"
    },
    "attachments": [
      {
        "id": "att_123456789",
        "filename": "circuit_test_results.png",
        "content_type": "image/png",
        "size": 89456,
        "download_url": "https://api.solveforce.com/v1/attachments/att_123456789"
      }
    ]
  }
}

πŸ“ž Customer Communications

Send Email Notification:

POST /v1/support/tickets/{ticket_id}/notify

Request Body:

{
  "type": "email",
  "recipients": [
    {
      "email": "john.smith@example.com",
      "name": "John Smith",
      "role": "primary_contact"
    },
    {
      "email": "it-team@example.com",
      "name": "IT Team",
      "role": "notification_list"
    }
  ],
  "template": "status_update",
  "subject": "Update on Network Connectivity Issue - Ticket #SF-2024-001234",
  "variables": {
    "customer_name": "John Smith",
    "ticket_number": "SF-2024-001234",
    "status": "In Progress",
    "expected_resolution": "2024-11-01T20:00:00Z",
    "next_update": "2024-11-01T18:00:00Z"
  },
  "include_comments": true,
  "comment_filter": "customer_visible"
}

SMS Notification:

POST /v1/support/tickets/{ticket_id}/notify

Request Body:

{
  "type": "sms",
  "recipients": [
    {
      "phone": "+1-555-123-4567",
      "name": "John Smith"
    }
  ],
  "message": "SOLVEFORCE Update: Network issue #SF-2024-001234 - Equipment replaced, testing in progress. ETA: 8PM. Reply STOP to opt out."
}

🎯 Categories and Routing

πŸ“‚ Support Categories

Get Available Categories:

GET /v1/support/categories

Response:

{
  "categories": [
    {
      "id": "network",
      "name": "Network & Connectivity",
      "description": "Internet, MPLS, SD-WAN, and network infrastructure issues",
      "sla": {
        "response_time": "2 hours",
        "resolution_time": "8 hours"
      },
      "subcategories": [
        {
          "id": "connectivity",
          "name": "Connectivity Issues",
          "routing_rules": {
            "auto_assign": "network_team",
            "escalation_threshold": "4 hours"
          }
        },
        {
          "id": "performance",
          "name": "Performance Issues",
          "routing_rules": {
            "auto_assign": "network_performance_team",
            "escalation_threshold": "6 hours"
          }
        }
      ]
    },
    {
      "id": "voice",
      "name": "Voice Services",
      "description": "VoIP, PBX, and voice communication issues",
      "sla": {
        "response_time": "1 hour",
        "resolution_time": "4 hours"
      },
      "subcategories": [
        {
          "id": "call_quality",
          "name": "Call Quality Issues"
        },
        {
          "id": "features",
          "name": "Feature Configuration"
        }
      ]
    }
  ]
}

🎯 Automatic Routing Rules

Configure Routing Rules:

POST /v1/support/routing-rules

Request Body:

{
  "rule_name": "High Priority Network Issues",
  "conditions": {
    "category": "network",
    "priority": ["high", "critical"],
    "keywords": ["outage", "down", "offline"],
    "customer_tier": "enterprise"
  },
  "actions": {
    "assign_to": "network_escalation_team",
    "notify": [
      "network-oncall@solveforce.com",
      "management@solveforce.com"
    ],
    "escalate_after": "1 hour",
    "auto_update_frequency": "30 minutes"
  },
  "active": true
}

πŸ“Š SLA Management and Escalation

⏱️ SLA Tracking

Get SLA Status:

GET /v1/support/tickets/{ticket_id}/sla

Response:

{
  "sla_status": {
    "ticket_id": "ticket_abc123def456",
    "priority": "high",
    "category": "network",
    "sla_tier": "enterprise",
    "response_time": {
      "target": "2 hours",
      "actual": "45 minutes",
      "status": "met",
      "due_at": "2024-11-01T16:30:00Z",
      "responded_at": "2024-11-01T15:15:00Z"
    },
    "resolution_time": {
      "target": "8 hours",
      "elapsed": "6 hours 15 minutes",
      "status": "in_progress",
      "due_at": "2024-11-01T22:30:00Z",
      "time_remaining": "1 hour 45 minutes"
    },
    "escalation": {
      "current_level": 2,
      "escalated_at": "2024-11-01T18:00:00Z",
      "escalation_reason": "Approaching SLA deadline",
      "next_escalation": "2024-11-01T21:00:00Z"
    }
  }
}

⬆️ Manual Escalation

Escalate Ticket:

POST /v1/support/tickets/{ticket_id}/escalate

Request Body:

{
  "escalation_level": 3,
  "reason": "Customer request - business critical impact",
  "notify": [
    "escalation-team@solveforce.com",
    "customer-success@solveforce.com"
  ],
  "metadata": {
    "business_impact": "Complete office offline",
    "customer_escalation": true,
    "executive_sponsor": "jane.doe@example.com"
  },
  "comments": "Customer CEO called directly. This is affecting their quarterly board meeting preparation."
}

πŸ“ˆ Analytics and Reporting

πŸ“Š Support Metrics

Get Support Dashboard:

GET /v1/support/analytics/dashboard

Query Parameters:

?customer_id=cust_1234567890&date_range=30d&timezone=America/Los_Angeles

Response:

{
  "dashboard": {
    "period": {
      "start": "2024-10-01T00:00:00Z",
      "end": "2024-11-01T00:00:00Z",
      "timezone": "America/Los_Angeles"
    },
    "overview": {
      "total_tickets": 45,
      "tickets_resolved": 42,
      "tickets_open": 3,
      "avg_resolution_time": "4.2 hours",
      "sla_compliance": 96.7,
      "customer_satisfaction": 4.8
    },
    "categories": [
      {
        "category": "network",
        "count": 18,
        "avg_resolution_time": "6.1 hours",
        "sla_compliance": 94.4
      },
      {
        "category": "voice",
        "count": 12,
        "avg_resolution_time": "2.8 hours",
        "sla_compliance": 100.0
      }
    ],
    "trends": {
      "tickets_per_day": [
        {"date": "2024-10-01", "count": 2},
        {"date": "2024-10-02", "count": 1},
        {"date": "2024-10-03", "count": 3}
      ],
      "resolution_time_trend": [
        {"week": "2024-W40", "avg_hours": 4.5},
        {"week": "2024-W41", "avg_hours": 4.1},
        {"week": "2024-W42", "avg_hours": 4.2}
      ]
    }
  }
}

πŸ“‹ Custom Reports

Generate Custom Report:

POST /v1/support/reports/generate

Request Body:

{
  "report_type": "detailed_analytics",
  "parameters": {
    "date_range": {
      "start": "2024-10-01T00:00:00Z",
      "end": "2024-11-01T00:00:00Z"
    },
    "filters": {
      "customer_ids": ["cust_1234567890"],
      "categories": ["network", "voice"],
      "priorities": ["high", "critical"]
    },
    "metrics": [
      "resolution_time",
      "sla_compliance", 
      "customer_satisfaction",
      "escalation_rate",
      "first_contact_resolution"
    ],
    "grouping": ["category", "week"],
    "format": "json"
  },
  "delivery": {
    "method": "download",
    "notification_email": "reports@example.com"
  }
}

Response:

{
  "report": {
    "id": "report_abc123def456",
    "status": "generating",
    "estimated_completion": "2024-11-01T17:30:00Z",
    "download_url": null,
    "parameters": {
      "date_range": {
        "start": "2024-10-01T00:00:00Z",
        "end": "2024-11-01T00:00:00Z"
      }
    }
  }
}

πŸ”— Integration Examples

🎯 Webhook Integration

Configure Support Webhooks:

POST /v1/support/webhooks

Request Body:

{
  "url": "https://your-app.com/webhooks/support",
  "events": [
    "ticket.created",
    "ticket.updated", 
    "ticket.resolved",
    "ticket.escalated",
    "comment.added"
  ],
  "filters": {
    "customer_ids": ["cust_1234567890"],
    "priorities": ["high", "critical"]
  },
  "secret": "your_webhook_secret",
  "active": true
}

Webhook Payload Example:

{
  "event": "ticket.escalated",
  "timestamp": "2024-11-01T18:00:00Z",
  "data": {
    "ticket": {
      "id": "ticket_abc123def456",
      "number": "SF-2024-001234",
      "title": "Network connectivity issues in San Francisco office",
      "status": "escalated",
      "priority": "critical",
      "escalation_level": 2,
      "escalation_reason": "SLA deadline approaching"
    }
  },
  "signature": "sha256=calculated_hmac_signature"
}

πŸ”Œ Third-Party Integrations

Slack Integration:

POST /v1/support/integrations/slack

Request Body:

{
  "webhook_url": "https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK",
  "channel": "#support-alerts",
  "events": ["ticket.created", "ticket.escalated"],
  "filters": {
    "priorities": ["high", "critical"]
  },
  "message_format": {
    "template": "New ticket created: {{ticket.title}} - Priority: {{ticket.priority}} - Customer: {{customer.name}}"
  }
}

Jira Integration:

POST /v1/support/integrations/jira

Request Body:

{
  "jira_url": "https://your-company.atlassian.net",
  "username": "api-user@example.com",
  "api_token": "your_jira_api_token",
  "project_key": "SUPPORT",
  "sync_settings": {
    "create_jira_issues": true,
    "sync_comments": true,
    "priority_mapping": {
      "critical": "Highest",
      "high": "High",
      "medium": "Medium",
      "low": "Low"
    }
  }
}

πŸ“ž Support API Help

πŸ†˜ API Support Channels

Technical Support:

  • API Issues: api-support@solveforce.com
  • Integration Help: integration-support@solveforce.com
  • Webhook Problems: webhook-support@solveforce.com
  • Emergency API Issues: +1-888-SOLVE-IT (24/7)

Documentation and Resources:

  • Interactive API Explorer: https://api.solveforce.com/docs/support
  • Postman Collection: Complete Support API collection with examples
  • SDK Downloads: Official SDKs for popular programming languages
  • Sample Applications: Reference implementations and code examples

Support Availability:

  • 24/7 Critical Issues: Production API failures and outages
  • Business Hours Support: Integration assistance and feature questions
  • Community Forum: Developer community and peer support
  • Professional Services: Custom integration and enterprise deployment

πŸ“š Code Examples and SDKs

Node.js SDK Example:

const SolveForceSupport = require('@solveforce/support-api');

const support = new SolveForceSupport({
  apiKey: 'your_api_key',
  environment: 'production'
});

// Create a new ticket
const ticket = await support.tickets.create({
  title: 'Network connectivity issue',
  description: 'Users experiencing connection problems',
  priority: 'high',
  category: 'network',
  contact: {
    name: 'John Smith',
    email: 'john.smith@example.com'
  }
});

console.log(`Ticket created: ${ticket.number}`);

Python SDK Example:

from solveforce import SupportAPI

support = SupportAPI(api_key='your_api_key')

# Create ticket
ticket = support.tickets.create({
    'title': 'Network connectivity issue',
    'description': 'Users experiencing connection problems',
    'priority': 'high',
    'category': 'network',
    'contact': {
        'name': 'John Smith',
        'email': 'john.smith@example.com'
    }
})

print(f"Ticket created: {ticket['number']}")

Streamlined Support Operations – SOLVEFORCE Support API Excellence.

Comprehensive support ticket management, automated workflows, and seamless integrations designed to enhance customer service delivery and operational efficiency.