Accounts

Create support ticket

Creates a rate-limited account-scoped service ticket with scraper request evidence. Account API keys are accepted so users and AI/API agents can open service tickets.

post/v1/support/tickets

Request body

subjectstring required
detailsstring required
request_idstring nullable
scraper_idstring nullable
failing_commandstring nullable
first_log_linestring nullable
severity'low' | 'normal' | 'urgent'

Support ticket severity.

Example request

{
  "subject": "Request failed",
  "details": "Request failed after retry.",
  "request_id": "request_123",
  "scraper_id": "tiktok",
  "failing_command": "tovuk request show request_123 --json",
  "first_log_line": "upstream timeout",
  "severity": "normal"
}

Response

Account-scoped service ticket created.

next_commandstring required

Example response

{
  "ticket": {
    "id": "ticket_0123456789abcdef0123",
    "created_by": "account_api_key",
    "subject": "Request failed",
    "details": "Request failed after retry.",
    "request_id": "request_123",
    "scraper_id": "tiktok",
    "failing_command": "tovuk request show request_123 --json",
    "first_log_line": "upstream timeout",
    "status": "open",
    "severity": "normal",
    "agent_instruction": "Continue with tovuk request diagnostics.",
    "created_at": "2026-06-23T12:00:00Z",
    "updated_at": "2026-06-23T12:10:00Z"
  },
  "rate_limit": {
    "limit_per_hour": 10,
    "remaining_hour": 9,
    "limit_per_day": 10,
    "remaining_day": 9
  },
  "next_command": "tovuk support list --json"
}

Changes

Changed in 5 of the 50 revisions of this API.331295

    • added the required property ticket/created_by to the response with the 200 status

      response-required-property-added

  • 4ec70e4800443113See the full diff
    • removed the required property agent_instruction from the response with the 200 status

      response-required-property-removed

    • removed the required property ok from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/createdAt from the response with the 200 status

      response-required-property-removed

    • added the new in_progress enum value to the ticket/status response property for the response status 200

      response-property-enum-value-added

    • added the new optional request property request_id

      new-optional-request-property

    • added the new optional request property scraper_id

      new-optional-request-property

    • added the optional property ticket/failing_command to the response with the 200 status

      response-optional-property-added

    • added the optional property ticket/first_log_line to the response with the 200 status

      response-optional-property-added

    • added the optional property ticket/request_id to the response with the 200 status

      response-optional-property-added

    • added the optional property ticket/scraper_id to the response with the 200 status

      response-optional-property-added

    • the ticket/id response's property pattern was changed from ^[\s\S]{0,8192}$ to ^ticket_[a-f0-9]{20}$ for the status 200

      response-property-pattern-changed

    • added the required property next_command to the response with the 200 status

      response-required-property-added

    • added the required property rate_limit to the response with the 200 status

      response-required-property-added

    • added the required property ticket/agent_instruction to the response with the 200 status

      response-required-property-added

    • added the required property ticket/created_at to the response with the 200 status

      response-required-property-added

    • added the required property ticket/details to the response with the 200 status

      response-required-property-added

    • added the required property ticket/updated_at to the response with the 200 status

      response-required-property-added

    • endpoint added

      endpoint-added

    • api path removed without deprecation

      api-path-removed-without-deprecation

    This revision also has 6 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • 3985c6090c91291180See the full diff
    • the response property checkout_url became nullable for the status 400

      response-property-became-nullable

    • the response property checkout_url became nullable for the status 401

      response-property-became-nullable

    • the response property checkout_url became nullable for the status 429

      response-property-became-nullable

    • the response property checkout_url became nullable for the status 500

      response-property-became-nullable

    • the response property checkout_url became optional for the status 400

      response-property-became-optional

    • the response property checkout_url became optional for the status 401

      response-property-became-optional

    • the response property checkout_url became optional for the status 429

      response-property-became-optional

    • the response property checkout_url became optional for the status 500

      response-property-became-optional

    • the agent_instruction response property's maxLength was unset from 1000 for the response status 400

      response-property-max-length-unset

    • the agent_instruction response property's maxLength was unset from 1000 for the response status 401

      response-property-max-length-unset

    • the agent_instruction response property's maxLength was unset from 1000 for the response status 429

      response-property-max-length-unset

    • the agent_instruction response property's maxLength was unset from 1000 for the response status 500

      response-property-max-length-unset

    • the message response property's maxLength was unset from 240 for the response status 400

      response-property-max-length-unset

    • the message response property's maxLength was unset from 240 for the response status 401

      response-property-max-length-unset

    • the message response property's maxLength was unset from 240 for the response status 429

      response-property-max-length-unset

    • the message response property's maxLength was unset from 240 for the response status 500

      response-property-max-length-unset

    • the ticket/id response property's maxLength was unset from 27 for the response status 200

      response-property-max-length-unset

    • the ticket/subject response property's maxLength was unset from 160 for the response status 200

      response-property-max-length-unset

    • removed the required property next_command from the response with the 200 status

      response-required-property-removed

    • removed the required property rate_limit from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/agent_instruction from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/build_id from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/created_at from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/deploy_id from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/details from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/failing_command from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/first_log_line from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/service_id from the response with the 200 status

      response-required-property-removed

    • removed the required property ticket/updated_at from the response with the 200 status

      response-required-property-removed

    • the optional response header Retry-After removed for the status 200

      optional-response-header-removed

    • the optional response header Retry-After removed for the status 400

      optional-response-header-removed

    • the optional response header Retry-After removed for the status 401

      optional-response-header-removed

    • the optional response header Retry-After removed for the status 500

      optional-response-header-removed

    • changed the pattern of the request property details from ^[\s\S]{1,8000}$ to ^[\s\S]{0,8192}$

      request-property-pattern-changed

    • changed the pattern of the request property failing_command from ^[^\r\n\x00-\x1F\x7F]{1,2000}$ to ^[\s\S]{0,8192}$

      request-property-pattern-changed

    • changed the pattern of the request property first_log_line from ^[^\r\n\x00-\x1F\x7F]{1,2000}$ to ^[\s\S]{0,8192}$

      request-property-pattern-changed

    • changed the pattern of the request property subject from ^[^\r\n\x00-\x1F\x7F]{1,160}$ to ^[\s\S]{0,8192}$

      request-property-pattern-changed

    • removed the request property build_id

      request-property-removed

    • removed the request property deploy_id

      request-property-removed

    • removed the request property service_id

      request-property-removed

    • the failing_command request property's minLength was decreased from 1 to 0

      request-property-min-length-decreased

    • the first_log_line request property's minLength was decreased from 1 to 0

      request-property-min-length-decreased

    • removed the database_unavailable enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the database_unavailable enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the database_unavailable enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the database_unavailable enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the in_progress enum value from the ticket/status response property for the response status 200

      response-property-enum-value-removed

    • removed the invalid_cpu_limit enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_cpu_limit enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_cpu_limit enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_cpu_limit enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the invalid_health_endpoint enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_health_endpoint enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_health_endpoint enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_health_endpoint enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the invalid_memory_limit enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_memory_limit enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_memory_limit enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_memory_limit enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the invalid_port enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_port enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_port enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_port enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the invalid_service_name enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_service_name enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_service_name enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_service_name enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the invalid_toml enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the invalid_toml enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the invalid_toml enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the invalid_toml enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the missing_command enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the missing_command enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the missing_command enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the missing_command enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the missing_config enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the missing_config enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the missing_config enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the missing_config enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the missing_source_archive enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the missing_source_archive enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the missing_source_archive enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the missing_source_archive enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the payment_required enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the payment_required enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the payment_required enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the payment_required enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the policy_rejected enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the policy_rejected enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the policy_rejected enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the policy_rejected enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • removed the rate_limited enum value from the code response property for the response status 400

      response-property-enum-value-removed

    • removed the rate_limited enum value from the code response property for the response status 401

      response-property-enum-value-removed

    • removed the rate_limited enum value from the code response property for the response status 429

      response-property-enum-value-removed

    • removed the rate_limited enum value from the code response property for the response status 500

      response-property-enum-value-removed

    • response property checkout_url list-of-types was narrowed by removing types null from media type application/json of response 400

      response-property-list-of-types-narrowed

    • response property checkout_url list-of-types was narrowed by removing types null from media type application/json of response 401

      response-property-list-of-types-narrowed

    • response property checkout_url list-of-types was narrowed by removing types null from media type application/json of response 429

      response-property-list-of-types-narrowed

    • response property checkout_url list-of-types was narrowed by removing types null from media type application/json of response 500

      response-property-list-of-types-narrowed

    • response property docs_url list-of-types was narrowed by removing types null from media type application/json of response 400

      response-property-list-of-types-narrowed

    • response property docs_url list-of-types was narrowed by removing types null from media type application/json of response 401

      response-property-list-of-types-narrowed

    • response property docs_url list-of-types was narrowed by removing types null from media type application/json of response 429

      response-property-list-of-types-narrowed

    • response property docs_url list-of-types was narrowed by removing types null from media type application/json of response 500

      response-property-list-of-types-narrowed

    • the code response's property pattern ^[\s\S]{0,8192}$ was added for the status 400

      response-property-pattern-added

    • the code response's property pattern ^[\s\S]{0,8192}$ was added for the status 401

      response-property-pattern-added

    • the code response's property pattern ^[\s\S]{0,8192}$ was added for the status 429

      response-property-pattern-added

    • the code response's property pattern ^[\s\S]{0,8192}$ was added for the status 500

      response-property-pattern-added

    • the agent_instruction response's property pattern was changed from ^[\s\S]{1,1000}$ to ^[\s\S]{0,8192}$ for the status 400

      response-property-pattern-changed

    • the agent_instruction response's property pattern was changed from ^[\s\S]{1,1000}$ to ^[\s\S]{0,8192}$ for the status 401

      response-property-pattern-changed

    • the agent_instruction response's property pattern was changed from ^[\s\S]{1,1000}$ to ^[\s\S]{0,8192}$ for the status 429

      response-property-pattern-changed

    • the agent_instruction response's property pattern was changed from ^[\s\S]{1,1000}$ to ^[\s\S]{0,8192}$ for the status 500

      response-property-pattern-changed

    • the message response's property pattern was changed from ^[\s\S]{1,240}$ to ^[\s\S]{0,8192}$ for the status 400

      response-property-pattern-changed

    • the message response's property pattern was changed from ^[\s\S]{1,240}$ to ^[\s\S]{0,8192}$ for the status 401

      response-property-pattern-changed

    • the message response's property pattern was changed from ^[\s\S]{1,240}$ to ^[\s\S]{0,8192}$ for the status 429

      response-property-pattern-changed

    • the message response's property pattern was changed from ^[\s\S]{1,240}$ to ^[\s\S]{0,8192}$ for the status 500

      response-property-pattern-changed

    • the ticket/id response's property pattern was changed from ^ticket_[a-f0-9]{20}$ to ^[\s\S]{0,8192}$ for the status 200

      response-property-pattern-changed

    • the ticket/subject response's property pattern was changed from ^[^\r\n\x00-\x1F\x7F]{1,160}$ to ^[\s\S]{0,8192}$ for the status 200

      response-property-pattern-changed

    • added the required property agent_instruction to the response with the 200 status

      response-required-property-added

    • added the required property ok to the response with the 200 status

      response-required-property-added

    • added the required property ticket/createdAt to the response with the 200 status

      response-required-property-added

    This revision also has 141 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog