[
  {
    "handler": "discovery",
    "method": "get",
    "path": "/.well-known/openid-configuration",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "routes::openapi::spec",
    "method": "get",
    "path": "/api/openapi.json",
    "source": "lib.rs"
  },
  {
    "handler": "list_identities",
    "method": "get",
    "path": "/api/v1/account/identities",
    "source": "oauth.rs"
  },
  {
    "handler": "unlink",
    "method": "delete",
    "path": "/api/v1/account/identities/{id}",
    "source": "oauth.rs"
  },
  {
    "handler": "my_apps",
    "method": "get",
    "path": "/api/v1/account/oauth-apps",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "my_revoke",
    "method": "delete",
    "path": "/api/v1/account/oauth-apps/{id}",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "cancel_erasure",
    "method": "delete",
    "path": "/api/v1/account/privacy/erasure",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "my_request",
    "method": "get",
    "path": "/api/v1/account/privacy/erasure",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "request_erasure",
    "method": "post",
    "path": "/api/v1/account/privacy/erasure",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "export_me",
    "method": "get",
    "path": "/api/v1/account/privacy/export",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "clear_mine",
    "method": "delete",
    "path": "/api/v1/account/security-question",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "my_question",
    "method": "get",
    "path": "/api/v1/account/security-question",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "set_mine",
    "method": "put",
    "path": "/api/v1/account/security-question",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "my_tos",
    "method": "get",
    "path": "/api/v1/account/tos",
    "source": "security.rs"
  },
  {
    "handler": "accept_tos",
    "method": "post",
    "path": "/api/v1/account/tos/accept",
    "source": "security.rs"
  },
  {
    "handler": "ui_token",
    "method": "post",
    "path": "/api/v1/addons/{id}/ui-token",
    "source": "addon_ext.rs"
  },
  {
    "handler": "dispatch",
    "method": "get",
    "path": "/api/v1/addons/{id}/{*rest}",
    "source": "addon_ext.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/addons",
    "source": "addons.rs"
  },
  {
    "handler": "mixins_list",
    "method": "get",
    "path": "/api/v1/admin/addons/mixins",
    "source": "addons.rs"
  },
  {
    "handler": "registry_index",
    "method": "get",
    "path": "/api/v1/admin/addons/registry",
    "source": "addons.rs"
  },
  {
    "handler": "registry_settings",
    "method": "get",
    "path": "/api/v1/admin/addons/registry/settings",
    "source": "addons.rs"
  },
  {
    "handler": "put_registry_settings",
    "method": "put",
    "path": "/api/v1/admin/addons/registry/settings",
    "source": "addons.rs"
  },
  {
    "handler": "registry_install",
    "method": "post",
    "path": "/api/v1/admin/addons/registry/{id}/install",
    "source": "addons.rs"
  },
  {
    "handler": "upload",
    "method": "post",
    "path": "/api/v1/admin/addons/upload",
    "source": "addons.rs"
  },
  {
    "handler": "uninstall",
    "method": "delete",
    "path": "/api/v1/admin/addons/{id}",
    "source": "addons.rs"
  },
  {
    "handler": "detail",
    "method": "get",
    "path": "/api/v1/admin/addons/{id}",
    "source": "addons.rs"
  },
  {
    "handler": "disable",
    "method": "post",
    "path": "/api/v1/admin/addons/{id}/disable",
    "source": "addons.rs"
  },
  {
    "handler": "enable",
    "method": "post",
    "path": "/api/v1/admin/addons/{id}/enable",
    "source": "addons.rs"
  },
  {
    "handler": "install",
    "method": "post",
    "path": "/api/v1/admin/addons/{id}/install",
    "source": "addons.rs"
  },
  {
    "handler": "mixins_toggle",
    "method": "post",
    "path": "/api/v1/admin/addons/{id}/mixins",
    "source": "addons.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/addons/{id}/settings",
    "source": "addons.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/addons/{id}/settings",
    "source": "addons.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/affiliates",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "materials_list",
    "method": "get",
    "path": "/api/v1/admin/affiliates/materials",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "materials_create",
    "method": "post",
    "path": "/api/v1/admin/affiliates/materials",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "materials_delete",
    "method": "delete",
    "path": "/api/v1/admin/affiliates/materials/{id}",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "materials_update",
    "method": "put",
    "path": "/api/v1/admin/affiliates/materials/{id}",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "admin_payouts",
    "method": "get",
    "path": "/api/v1/admin/affiliates/payouts",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "admin_process",
    "method": "post",
    "path": "/api/v1/admin/affiliates/payouts/{id}",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "rates_list",
    "method": "get",
    "path": "/api/v1/admin/affiliates/product-rates",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "rates_set",
    "method": "put",
    "path": "/api/v1/admin/affiliates/product-rates",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "rates_delete",
    "method": "delete",
    "path": "/api/v1/admin/affiliates/product-rates/{product_id}",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "tiers_list",
    "method": "get",
    "path": "/api/v1/admin/affiliates/tiers",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "tiers_create",
    "method": "post",
    "path": "/api/v1/admin/affiliates/tiers",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "tiers_delete",
    "method": "delete",
    "path": "/api/v1/admin/affiliates/tiers/{id}",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/affiliates/{id}",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "admin_announcements",
    "method": "get",
    "path": "/api/v1/admin/announcements",
    "source": "routes/content.rs"
  },
  {
    "handler": "create_announcement",
    "method": "post",
    "path": "/api/v1/admin/announcements",
    "source": "routes/content.rs"
  },
  {
    "handler": "delete_announcement",
    "method": "delete",
    "path": "/api/v1/admin/announcements/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "update_announcement",
    "method": "put",
    "path": "/api/v1/admin/announcements/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/api-keys",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "admin_revoke",
    "method": "delete",
    "path": "/api/v1/admin/api-keys/{id}",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "list_audit",
    "method": "get",
    "path": "/api/v1/admin/audit-logs",
    "source": "routes/admin.rs"
  },
  {
    "handler": "overview",
    "method": "get",
    "path": "/api/v1/admin/automation",
    "source": "routes/automation.rs"
  },
  {
    "handler": "run_now",
    "method": "post",
    "path": "/api/v1/admin/automation/{kind}/run",
    "source": "routes/automation.rs"
  },
  {
    "handler": "put_setting",
    "method": "put",
    "path": "/api/v1/admin/automation/{kind}/settings",
    "source": "routes/automation.rs"
  },
  {
    "handler": "run_now",
    "method": "post",
    "path": "/api/v1/admin/autopay/run",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "list_backups",
    "method": "get",
    "path": "/api/v1/admin/backups",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "create_backup",
    "method": "post",
    "path": "/api/v1/admin/backups",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "delete_backup",
    "method": "delete",
    "path": "/api/v1/admin/backups/{id}",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "download_backup",
    "method": "get",
    "path": "/api/v1/admin/backups/{id}/download",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/banned-emails",
    "source": "routes/banned_emails.rs"
  },
  {
    "handler": "add",
    "method": "post",
    "path": "/api/v1/admin/banned-emails",
    "source": "routes/banned_emails.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/banned-emails/{domain}",
    "source": "routes/banned_emails.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/billable-items",
    "source": "routes/billable.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/billable-items",
    "source": "routes/billable.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/billable-items/{id}",
    "source": "routes/billable.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/bundles",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/bundles",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/bundles/{id}",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/bundles/{id}",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "calendar",
    "method": "get",
    "path": "/api/v1/admin/calendar",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/campaigns",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/campaigns",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "preview",
    "method": "post",
    "path": "/api/v1/admin/campaigns/preview",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/campaigns/{id}",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "detail",
    "method": "get",
    "path": "/api/v1/admin/campaigns/{id}",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/campaigns/{id}",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "cancel",
    "method": "post",
    "path": "/api/v1/admin/campaigns/{id}/cancel",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "unschedule",
    "method": "delete",
    "path": "/api/v1/admin/campaigns/{id}/schedule",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "schedule",
    "method": "post",
    "path": "/api/v1/admin/campaigns/{id}/schedule",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "send",
    "method": "post",
    "path": "/api/v1/admin/campaigns/{id}/send",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "admin_cancellations",
    "method": "get",
    "path": "/api/v1/admin/cancellations",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "admin_decide",
    "method": "post",
    "path": "/api/v1/admin/cancellations/{id}/decide",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "admin_addons",
    "method": "get",
    "path": "/api/v1/admin/catalog/addons",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "create_addon",
    "method": "post",
    "path": "/api/v1/admin/catalog/addons",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "update_addon",
    "method": "put",
    "path": "/api/v1/admin/catalog/addons/{id}",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "admin_groups",
    "method": "get",
    "path": "/api/v1/admin/catalog/groups",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "create_group",
    "method": "post",
    "path": "/api/v1/admin/catalog/groups",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "admin_products",
    "method": "get",
    "path": "/api/v1/admin/catalog/products",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "create_product",
    "method": "post",
    "path": "/api/v1/admin/catalog/products",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "update_product",
    "method": "patch",
    "path": "/api/v1/admin/catalog/products/{id}",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "product_billing",
    "method": "get",
    "path": "/api/v1/admin/catalog/products/{id}/billing",
    "source": "routes/billable.rs"
  },
  {
    "handler": "set_product_billing",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/billing",
    "source": "routes/billable.rs"
  },
  {
    "handler": "admin_fields",
    "method": "get",
    "path": "/api/v1/admin/catalog/products/{id}/fields",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "create_field",
    "method": "post",
    "path": "/api/v1/admin/catalog/products/{id}/fields",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "delete_field",
    "method": "delete",
    "path": "/api/v1/admin/catalog/products/{id}/fields/{field}",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "update_field",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/fields/{field}",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "product_fixed_term",
    "method": "get",
    "path": "/api/v1/admin/catalog/products/{id}/fixed-term",
    "source": "routes/billable.rs"
  },
  {
    "handler": "set_product_fixed_term",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/fixed-term",
    "source": "routes/billable.rs"
  },
  {
    "handler": "add_option",
    "method": "post",
    "path": "/api/v1/admin/catalog/products/{id}/options",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "delete_option",
    "method": "delete",
    "path": "/api/v1/admin/catalog/products/{id}/options/{option}",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "set_prices",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/prices",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "admin_recs",
    "method": "get",
    "path": "/api/v1/admin/catalog/products/{id}/recommendations",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "admin_set_recs",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/recommendations",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "set_product_stock",
    "method": "put",
    "path": "/api/v1/admin/catalog/products/{id}/stock",
    "source": "routes/billable.rs"
  },
  {
    "handler": "inbox",
    "method": "get",
    "path": "/api/v1/admin/chats",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "staff_close",
    "method": "post",
    "path": "/api/v1/admin/chats/{id}/close",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "staff_messages",
    "method": "get",
    "path": "/api/v1/admin/chats/{id}/messages",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "staff_post",
    "method": "post",
    "path": "/api/v1/admin/chats/{id}/messages",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "list_fields",
    "method": "get",
    "path": "/api/v1/admin/client-fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "create_field",
    "method": "post",
    "path": "/api/v1/admin/client-fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "delete_field",
    "method": "delete",
    "path": "/api/v1/admin/client-fields/{id}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "update_field",
    "method": "put",
    "path": "/api/v1/admin/client-fields/{id}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/client-group-rules",
    "source": "routes/client_group_rules.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/client-group-rules",
    "source": "routes/client_group_rules.rs"
  },
  {
    "handler": "apply",
    "method": "post",
    "path": "/api/v1/admin/client-group-rules/apply",
    "source": "routes/client_group_rules.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/client-group-rules/{id}",
    "source": "routes/client_group_rules.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/client-group-rules/{id}",
    "source": "routes/client_group_rules.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/client-groups",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/client-groups",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/client-groups/{id}",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/client-groups/{id}",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "members",
    "method": "get",
    "path": "/api/v1/admin/client-groups/{id}/members",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "add_member",
    "method": "post",
    "path": "/api/v1/admin/client-groups/{id}/members",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "remove_member",
    "method": "delete",
    "path": "/api/v1/admin/client-groups/{id}/members/{customer_id}",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "contact_list",
    "method": "get",
    "path": "/api/v1/admin/contact-messages",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "contact_del",
    "method": "delete",
    "path": "/api/v1/admin/contact-messages/{id}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "contact_status",
    "method": "put",
    "path": "/api/v1/admin/contact-messages/{id}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "contact_to_ticket",
    "method": "post",
    "path": "/api/v1/admin/contact-messages/{id}/ticket",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/coupons",
    "source": "routes/coupons.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/coupons",
    "source": "routes/coupons.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/coupons/{id}",
    "source": "routes/coupons.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/coupons/{id}",
    "source": "routes/coupons.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/currencies",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/currencies",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "rate_history",
    "method": "get",
    "path": "/api/v1/admin/currencies/rates/history",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "rate_settings",
    "method": "get",
    "path": "/api/v1/admin/currencies/rates/settings",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "save_rate_settings",
    "method": "put",
    "path": "/api/v1/admin/currencies/rates/settings",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "update_rates",
    "method": "post",
    "path": "/api/v1/admin/currencies/rates/update",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "sync_prices",
    "method": "post",
    "path": "/api/v1/admin/currencies/sync-prices",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/currencies/{code}",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "make_default",
    "method": "post",
    "path": "/api/v1/admin/currencies/{code}/default",
    "source": "routes/currencies.rs"
  },
  {
    "handler": "get_code",
    "method": "get",
    "path": "/api/v1/admin/custom-code",
    "source": "routes/general_settings.rs"
  },
  {
    "handler": "put_code",
    "method": "put",
    "path": "/api/v1/admin/custom-code",
    "source": "routes/general_settings.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/customers",
    "source": "routes/customers.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/customers",
    "source": "routes/customers.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}",
    "source": "routes/customers.rs"
  },
  {
    "handler": "admin_update",
    "method": "patch",
    "path": "/api/v1/admin/customers/{id}",
    "source": "routes/customers.rs"
  },
  {
    "handler": "admin_auto_pay",
    "method": "put",
    "path": "/api/v1/admin/customers/{id}/auto-pay",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "invoice_pending",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/billable-items/invoice",
    "source": "routes/billable.rs"
  },
  {
    "handler": "close_customer",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/close",
    "source": "security.rs"
  },
  {
    "handler": "admin_credit",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/credit",
    "source": "routes/credit.rs"
  },
  {
    "handler": "admin_adjust",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/credit",
    "source": "routes/credit.rs"
  },
  {
    "handler": "customer_emails",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/emails",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "admin_values",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "admin_set_values",
    "method": "put",
    "path": "/api/v1/admin/customers/{id}/fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "set_customer_group",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/group",
    "source": "routes/client_groups.rs"
  },
  {
    "handler": "admin_customer",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/kyc",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "admin_override",
    "method": "put",
    "path": "/api/v1/admin/customers/{id}/kyc",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "customer_entity",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/legal-entity",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "assign",
    "method": "put",
    "path": "/api/v1/admin/customers/{id}/legal-entity",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "login_as_customer",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/login-as",
    "source": "security.rs"
  },
  {
    "handler": "merge_customer",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/merge",
    "source": "security.rs"
  },
  {
    "handler": "admin_mergeable",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/mergeable-invoices",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "list_notes",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/notes",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "add_note",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/notes",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "delete_note",
    "method": "delete",
    "path": "/api/v1/admin/customers/{id}/notes/{note}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "update_note",
    "method": "put",
    "path": "/api/v1/admin/customers/{id}/notes/{note}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/payment-methods",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "admin_status",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/security-question",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "admin_verify",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/security-question/verify",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "admin_contacts",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/subaccounts",
    "source": "routes/store.rs"
  },
  {
    "handler": "customer_summary",
    "method": "get",
    "path": "/api/v1/admin/customers/{id}/summary",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "admin_verify_vat",
    "method": "post",
    "path": "/api/v1/admin/customers/{id}/vat/verify",
    "source": "routes/tax.rs"
  },
  {
    "handler": "admin_dashboard",
    "method": "get",
    "path": "/api/v1/admin/dashboard",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/domains",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_bulk",
    "method": "post",
    "path": "/api/v1/admin/domains/bulk",
    "source": "routes/domains.rs"
  },
  {
    "handler": "costs",
    "method": "get",
    "path": "/api/v1/admin/domains/costs",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "margins",
    "method": "get",
    "path": "/api/v1/admin/domains/margins",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "set_margins",
    "method": "put",
    "path": "/api/v1/admin/domains/margins",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "premium",
    "method": "get",
    "path": "/api/v1/admin/domains/premium-settings",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "set_premium",
    "method": "put",
    "path": "/api/v1/admin/domains/premium-settings",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "admin_run",
    "method": "post",
    "path": "/api/v1/admin/domains/run",
    "source": "routes/domains.rs"
  },
  {
    "handler": "sync_prices",
    "method": "post",
    "path": "/api/v1/admin/domains/sync-prices",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "all_fields",
    "method": "get",
    "path": "/api/v1/admin/domains/tld-fields",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "set_fields",
    "method": "put",
    "path": "/api/v1/admin/domains/tld-fields/{tld}",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/domains/{id}",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_update",
    "method": "patch",
    "path": "/api/v1/admin/domains/{id}",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_dns",
    "method": "get",
    "path": "/api/v1/admin/domains/{id}/dns",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_dns_put",
    "method": "put",
    "path": "/api/v1/admin/domains/{id}/dns",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_rv_action",
    "method": "post",
    "path": "/api/v1/admin/domains/{id}/registrant-verification",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_check",
    "method": "post",
    "path": "/api/v1/admin/domains/{id}/ssl-check",
    "source": "routes/ssl.rs"
  },
  {
    "handler": "admin_sync",
    "method": "post",
    "path": "/api/v1/admin/domains/{id}/sync",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/downloads",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "admin_upload",
    "method": "post",
    "path": "/api/v1/admin/downloads",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/downloads/{id}",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "admin_file",
    "method": "get",
    "path": "/api/v1/admin/downloads/{id}",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/email-log",
    "source": "routes/email_log.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/email-log/{id}",
    "source": "routes/email_log.rs"
  },
  {
    "handler": "admin_resend",
    "method": "post",
    "path": "/api/v1/admin/email-log/{id}/resend",
    "source": "routes/email_log.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/email-templates",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "set_enabled",
    "method": "put",
    "path": "/api/v1/admin/email-templates/{name}/enabled",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "revert",
    "method": "delete",
    "path": "/api/v1/admin/email-templates/{name}/{locale}",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "save",
    "method": "put",
    "path": "/api/v1/admin/email-templates/{name}/{locale}",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "preview",
    "method": "post",
    "path": "/api/v1/admin/email-templates/{name}/{locale}/preview",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "send_test",
    "method": "post",
    "path": "/api/v1/admin/email-templates/{name}/{locale}/test",
    "source": "routes/email_templates.rs"
  },
  {
    "handler": "resend",
    "method": "post",
    "path": "/api/v1/admin/emails/{job}/resend",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "invoices_csv",
    "method": "get",
    "path": "/api/v1/admin/exports/invoices.csv",
    "source": "routes/exports.rs"
  },
  {
    "handler": "payments_csv",
    "method": "get",
    "path": "/api/v1/admin/exports/payments.csv",
    "source": "routes/exports.rs"
  },
  {
    "handler": "list_checks",
    "method": "get",
    "path": "/api/v1/admin/fraud/checks",
    "source": "routes/fraud.rs"
  },
  {
    "handler": "list_gateways",
    "method": "get",
    "path": "/api/v1/admin/gateways",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "create_custom",
    "method": "post",
    "path": "/api/v1/admin/gateways/custom",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "list_deliveries",
    "method": "get",
    "path": "/api/v1/admin/gateways/deliveries",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "delete_custom",
    "method": "delete",
    "path": "/api/v1/admin/gateways/{id}",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "update_gateway",
    "method": "put",
    "path": "/api/v1/admin/gateways/{id}",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "get_gateway_rules",
    "method": "get",
    "path": "/api/v1/admin/gateways/{id}/rules",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "put_gateway_rules",
    "method": "put",
    "path": "/api/v1/admin/gateways/{id}/rules",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "test_webhook",
    "method": "post",
    "path": "/api/v1/admin/gateways/{id}/test-webhook",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/gdpr/requests",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "approve",
    "method": "post",
    "path": "/api/v1/admin/gdpr/requests/{id}/approve",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "reject",
    "method": "post",
    "path": "/api/v1/admin/gdpr/requests/{id}/reject",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "export_user",
    "method": "get",
    "path": "/api/v1/admin/gdpr/users/{id}/export",
    "source": "routes/gdpr.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/general-settings",
    "source": "routes/general_settings.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/general-settings",
    "source": "routes/general_settings.rs"
  },
  {
    "handler": "gift_list",
    "method": "get",
    "path": "/api/v1/admin/gift-cards",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "gift_create",
    "method": "post",
    "path": "/api/v1/admin/gift-cards",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "gift_disable",
    "method": "post",
    "path": "/api/v1/admin/gift-cards/{id}/disable",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "analyze",
    "method": "post",
    "path": "/api/v1/admin/import/csv/analyze",
    "source": "routes/csv_import.rs"
  },
  {
    "handler": "run",
    "method": "post",
    "path": "/api/v1/admin/import/csv/run",
    "source": "routes/csv_import.rs"
  },
  {
    "handler": "preview_inactive",
    "method": "get",
    "path": "/api/v1/admin/inactive-clients/preview",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "run_inactive",
    "method": "post",
    "path": "/api/v1/admin/inactive-clients/run",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "admin_invoices",
    "method": "get",
    "path": "/api/v1/admin/invoices",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_create_invoice",
    "method": "post",
    "path": "/api/v1/admin/invoices",
    "source": "routes/billing.rs"
  },
  {
    "handler": "invoices_bulk",
    "method": "post",
    "path": "/api/v1/admin/invoices/bulk",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "admin_merge",
    "method": "post",
    "path": "/api/v1/admin/invoices/merge",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_invoice",
    "method": "get",
    "path": "/api/v1/admin/invoices/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_apply",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/apply-credit",
    "source": "routes/credit.rs"
  },
  {
    "handler": "admin_credit_note",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/credit-note",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_debit_note",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/debit-note",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_duplicate",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/duplicate",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_finalize",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/finalize",
    "source": "routes/billing.rs"
  },
  {
    "handler": "add_lines",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/items",
    "source": "routes/billable.rs"
  },
  {
    "handler": "admin_notes",
    "method": "get",
    "path": "/api/v1/admin/invoices/{id}/notes",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_set_notes",
    "method": "put",
    "path": "/api/v1/admin/invoices/{id}/notes",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_record_payment",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/payments",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_pdf",
    "method": "get",
    "path": "/api/v1/admin/invoices/{id}/pdf",
    "source": "routes/invoice_pdf.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/invoices/{id}/refunds",
    "source": "routes/refunds.rs"
  },
  {
    "handler": "admin_split",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/split",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_ubl",
    "method": "get",
    "path": "/api/v1/admin/invoices/{id}/ubl",
    "source": "routes/einvoice.rs"
  },
  {
    "handler": "admin_void",
    "method": "post",
    "path": "/api/v1/admin/invoices/{id}/void",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_jobs",
    "method": "get",
    "path": "/api/v1/admin/jobs",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_run_recurring",
    "method": "post",
    "path": "/api/v1/admin/jobs/recurring",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_retry_job",
    "method": "post",
    "path": "/api/v1/admin/jobs/{id}/retry",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_articles",
    "method": "get",
    "path": "/api/v1/admin/kb/articles",
    "source": "routes/content.rs"
  },
  {
    "handler": "create_article",
    "method": "post",
    "path": "/api/v1/admin/kb/articles",
    "source": "routes/content.rs"
  },
  {
    "handler": "delete_article",
    "method": "delete",
    "path": "/api/v1/admin/kb/articles/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "admin_article",
    "method": "get",
    "path": "/api/v1/admin/kb/articles/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "update_article",
    "method": "put",
    "path": "/api/v1/admin/kb/articles/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "get_tags",
    "method": "get",
    "path": "/api/v1/admin/kb/articles/{id}/tags",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "put_tags",
    "method": "put",
    "path": "/api/v1/admin/kb/articles/{id}/tags",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "admin_categories",
    "method": "get",
    "path": "/api/v1/admin/kb/categories",
    "source": "routes/content.rs"
  },
  {
    "handler": "create_category",
    "method": "post",
    "path": "/api/v1/admin/kb/categories",
    "source": "routes/content.rs"
  },
  {
    "handler": "delete_category",
    "method": "delete",
    "path": "/api/v1/admin/kb/categories/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "update_category",
    "method": "put",
    "path": "/api/v1/admin/kb/categories/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "admin_queue",
    "method": "get",
    "path": "/api/v1/admin/kyc",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "admin_download",
    "method": "get",
    "path": "/api/v1/admin/kyc/documents/{id}/download",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "admin_review",
    "method": "post",
    "path": "/api/v1/admin/kyc/documents/{id}/review",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "settings_get",
    "method": "get",
    "path": "/api/v1/admin/kyc/settings",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "settings_put",
    "method": "put",
    "path": "/api/v1/admin/kyc/settings",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/legal-entities",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/legal-entities",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "clear_default",
    "method": "delete",
    "path": "/api/v1/admin/legal-entities/default",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/legal-entities/{id}",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/legal-entities/{id}",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "make_default",
    "method": "post",
    "path": "/api/v1/admin/legal-entities/{id}/default",
    "source": "routes/legal_entities.rs"
  },
  {
    "handler": "login_history",
    "method": "get",
    "path": "/api/v1/admin/login-history",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "customers",
    "method": "post",
    "path": "/api/v1/admin/mass/customers",
    "source": "routes/mass.rs"
  },
  {
    "handler": "domains",
    "method": "post",
    "path": "/api/v1/admin/mass/domains",
    "source": "routes/mass.rs"
  },
  {
    "handler": "services",
    "method": "post",
    "path": "/api/v1/admin/mass/services",
    "source": "routes/mass.rs"
  },
  {
    "handler": "tickets",
    "method": "post",
    "path": "/api/v1/admin/mass/tickets",
    "source": "routes/mass.rs"
  },
  {
    "handler": "log_list",
    "method": "get",
    "path": "/api/v1/admin/module-log",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "queue",
    "method": "get",
    "path": "/api/v1/admin/module-queue",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "queue_retry",
    "method": "post",
    "path": "/api/v1/admin/module-queue/{id}/retry",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "get_notes",
    "method": "get",
    "path": "/api/v1/admin/my-notes",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "put_notes",
    "method": "put",
    "path": "/api/v1/admin/my-notes",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/network-issues",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/network-issues",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/network-issues/{id}",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/network-issues/{id}",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "add_update",
    "method": "post",
    "path": "/api/v1/admin/network-issues/{id}/updates",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "list_notices",
    "method": "get",
    "path": "/api/v1/admin/noticeboard",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "create_notice",
    "method": "post",
    "path": "/api/v1/admin/noticeboard",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "delete_notice",
    "method": "delete",
    "path": "/api/v1/admin/noticeboard/{id}",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "list_rules",
    "method": "get",
    "path": "/api/v1/admin/notification-rules",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "create_rule",
    "method": "post",
    "path": "/api/v1/admin/notification-rules",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "preview",
    "method": "post",
    "path": "/api/v1/admin/notification-rules/preview",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "delete_rule",
    "method": "delete",
    "path": "/api/v1/admin/notification-rules/{id}",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "update_rule",
    "method": "put",
    "path": "/api/v1/admin/notification-rules/{id}",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "rule_deliveries",
    "method": "get",
    "path": "/api/v1/admin/notification-rules/{id}/deliveries",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "clear_secret",
    "method": "delete",
    "path": "/api/v1/admin/notification-rules/{id}/secret",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "rotate_secret",
    "method": "post",
    "path": "/api/v1/admin/notification-rules/{id}/secret",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "test_rule",
    "method": "post",
    "path": "/api/v1/admin/notification-rules/{id}/test",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/oauth-clients",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/oauth-clients",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/oauth-clients/{id}",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "admin_update",
    "method": "patch",
    "path": "/api/v1/admin/oauth-clients/{id}",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "admin_rotate",
    "method": "post",
    "path": "/api/v1/admin/oauth-clients/{id}/secret",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/order-forms",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/order-forms",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/order-forms/{id}",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/order-forms/{id}",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_orders",
    "method": "get",
    "path": "/api/v1/admin/orders",
    "source": "routes/billing.rs"
  },
  {
    "handler": "super::store::admin_create_order",
    "method": "post",
    "path": "/api/v1/admin/orders",
    "source": "routes/billing.rs"
  },
  {
    "handler": "queue",
    "method": "get",
    "path": "/api/v1/admin/orders/approval-queue",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "orders_bulk",
    "method": "post",
    "path": "/api/v1/admin/orders/bulk",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "admin_delete_order",
    "method": "delete",
    "path": "/api/v1/admin/orders/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_order",
    "method": "get",
    "path": "/api/v1/admin/orders/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_approve",
    "method": "post",
    "path": "/api/v1/admin/orders/{id}/approve",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_cancel",
    "method": "post",
    "path": "/api/v1/admin/orders/{id}/cancel",
    "source": "routes/billing.rs"
  },
  {
    "handler": "super::store::admin_add_note",
    "method": "post",
    "path": "/api/v1/admin/orders/{id}/notes",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_pending_order",
    "method": "post",
    "path": "/api/v1/admin/orders/{id}/pending",
    "source": "routes/billing.rs"
  },
  {
    "handler": "super::store::admin_refund_order",
    "method": "post",
    "path": "/api/v1/admin/orders/{id}/refund",
    "source": "routes/billing.rs"
  },
  {
    "handler": "run_now",
    "method": "post",
    "path": "/api/v1/admin/overdue/run",
    "source": "routes/overdue.rs"
  },
  {
    "handler": "admin_refund",
    "method": "post",
    "path": "/api/v1/admin/payments/{id}/refunds",
    "source": "routes/refunds.rs"
  },
  {
    "handler": "list_plugins",
    "method": "get",
    "path": "/api/v1/admin/plugins",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "set_plugin",
    "method": "put",
    "path": "/api/v1/admin/plugins/{id}",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "list_deliveries",
    "method": "get",
    "path": "/api/v1/admin/plugins/{id}/deliveries",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "redeliver",
    "method": "post",
    "path": "/api/v1/admin/plugins/{id}/deliveries/{did}/redeliver",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/plugins/{id}/settings",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/plugins/{id}/settings",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "get_webhook",
    "method": "get",
    "path": "/api/v1/admin/plugins/{id}/webhook",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "put_webhook",
    "method": "put",
    "path": "/api/v1/admin/plugins/{id}/webhook",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "rotate_secret",
    "method": "post",
    "path": "/api/v1/admin/plugins/{id}/webhook/secret",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "get_prefs",
    "method": "get",
    "path": "/api/v1/admin/prefs",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "put_prefs",
    "method": "put",
    "path": "/api/v1/admin/prefs",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "admin_set_group",
    "method": "put",
    "path": "/api/v1/admin/product-groups/{id}/order-form",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_free_get",
    "method": "get",
    "path": "/api/v1/admin/products/{id}/free-domain",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "admin_free_put",
    "method": "put",
    "path": "/api/v1/admin/products/{id}/free-domain",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "product_get",
    "method": "get",
    "path": "/api/v1/admin/products/{id}/module",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "product_set",
    "method": "put",
    "path": "/api/v1/admin/products/{id}/module",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "product_group_get",
    "method": "get",
    "path": "/api/v1/admin/products/{id}/server-group",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "product_group_set",
    "method": "put",
    "path": "/api/v1/admin/products/{id}/server-group",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/projects",
    "source": "routes/projects.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/projects",
    "source": "routes/projects.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/projects/{id}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "detail",
    "method": "get",
    "path": "/api/v1/admin/projects/{id}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/projects/{id}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "invoice_time",
    "method": "post",
    "path": "/api/v1/admin/projects/{id}/invoice-time",
    "source": "routes/projects.rs"
  },
  {
    "handler": "unlink",
    "method": "delete",
    "path": "/api/v1/admin/projects/{id}/links",
    "source": "routes/projects.rs"
  },
  {
    "handler": "link",
    "method": "post",
    "path": "/api/v1/admin/projects/{id}/links",
    "source": "routes/projects.rs"
  },
  {
    "handler": "add_task",
    "method": "post",
    "path": "/api/v1/admin/projects/{id}/tasks",
    "source": "routes/projects.rs"
  },
  {
    "handler": "delete_task",
    "method": "delete",
    "path": "/api/v1/admin/projects/{id}/tasks/{task}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "set_task",
    "method": "put",
    "path": "/api/v1/admin/projects/{id}/tasks/{task}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "add_time",
    "method": "post",
    "path": "/api/v1/admin/projects/{id}/time",
    "source": "routes/projects.rs"
  },
  {
    "handler": "delete_time",
    "method": "delete",
    "path": "/api/v1/admin/projects/{id}/time/{entry}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "modules",
    "method": "get",
    "path": "/api/v1/admin/provisioning/modules",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/quotes",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/quotes",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/quotes/{id}",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/quotes/{id}",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/quotes/{id}",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_pdf",
    "method": "get",
    "path": "/api/v1/admin/quotes/{id}/pdf",
    "source": "routes/quote_pdf.rs"
  },
  {
    "handler": "admin_send",
    "method": "post",
    "path": "/api/v1/admin/quotes/{id}/send",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "admin_registrars",
    "method": "get",
    "path": "/api/v1/admin/registrars",
    "source": "routes/domains.rs"
  },
  {
    "handler": "get_report",
    "method": "get",
    "path": "/api/v1/admin/reports",
    "source": "routes/reports.rs"
  },
  {
    "handler": "library",
    "method": "get",
    "path": "/api/v1/admin/reports/library",
    "source": "routes/reports.rs"
  },
  {
    "handler": "run_report",
    "method": "get",
    "path": "/api/v1/admin/reports/library/{key}",
    "source": "routes/reports.rs"
  },
  {
    "handler": "tax",
    "method": "get",
    "path": "/api/v1/admin/reports/tax",
    "source": "routes/exports.rs"
  },
  {
    "handler": "tax_csv",
    "method": "get",
    "path": "/api/v1/admin/reports/tax.csv",
    "source": "routes/exports.rs"
  },
  {
    "handler": "list_roles",
    "method": "get",
    "path": "/api/v1/admin/roles",
    "source": "routes/staff.rs"
  },
  {
    "handler": "create_role",
    "method": "post",
    "path": "/api/v1/admin/roles",
    "source": "routes/staff.rs"
  },
  {
    "handler": "delete_role",
    "method": "delete",
    "path": "/api/v1/admin/roles/{id}",
    "source": "routes/staff.rs"
  },
  {
    "handler": "update_role",
    "method": "put",
    "path": "/api/v1/admin/roles/{id}",
    "source": "routes/staff.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/saml/idps",
    "source": "saml.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/saml/idps",
    "source": "saml.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/saml/idps/{id}",
    "source": "saml.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/saml/idps/{id}",
    "source": "saml.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/saml/idps/{id}",
    "source": "saml.rs"
  },
  {
    "handler": "admin_rotate_key",
    "method": "post",
    "path": "/api/v1/admin/saml/idps/{id}/rotate-key",
    "source": "saml.rs"
  },
  {
    "handler": "admin_validate",
    "method": "post",
    "path": "/api/v1/admin/saml/idps/{id}/validate",
    "source": "saml.rs"
  },
  {
    "handler": "admin_parse_metadata",
    "method": "post",
    "path": "/api/v1/admin/saml/metadata",
    "source": "saml.rs"
  },
  {
    "handler": "search",
    "method": "get",
    "path": "/api/v1/admin/search",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/security-questions",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/security-questions",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/security-questions/{id}",
    "source": "routes/security_questions.rs"
  },
  {
    "handler": "get_policy",
    "method": "get",
    "path": "/api/v1/admin/security/captcha",
    "source": "captcha.rs"
  },
  {
    "handler": "put_policy",
    "method": "put",
    "path": "/api/v1/admin/security/captcha",
    "source": "captcha.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/security/duo",
    "source": "duo.rs"
  },
  {
    "handler": "admin_put",
    "method": "put",
    "path": "/api/v1/admin/security/duo",
    "source": "duo.rs"
  },
  {
    "handler": "admin_test",
    "method": "post",
    "path": "/api/v1/admin/security/duo/test",
    "source": "duo.rs"
  },
  {
    "handler": "list_rules",
    "method": "get",
    "path": "/api/v1/admin/security/ip-rules",
    "source": "security.rs"
  },
  {
    "handler": "add_rule",
    "method": "post",
    "path": "/api/v1/admin/security/ip-rules",
    "source": "security.rs"
  },
  {
    "handler": "delete_rule",
    "method": "delete",
    "path": "/api/v1/admin/security/ip-rules/{id}",
    "source": "security.rs"
  },
  {
    "handler": "get_policy",
    "method": "get",
    "path": "/api/v1/admin/security/policy",
    "source": "security.rs"
  },
  {
    "handler": "put_policy",
    "method": "put",
    "path": "/api/v1/admin/security/policy",
    "source": "security.rs"
  },
  {
    "handler": "get_2fa",
    "method": "get",
    "path": "/api/v1/admin/security/staff-2fa",
    "source": "routes/staff.rs"
  },
  {
    "handler": "put_2fa",
    "method": "put",
    "path": "/api/v1/admin/security/staff-2fa",
    "source": "routes/staff.rs"
  },
  {
    "handler": "list_tos",
    "method": "get",
    "path": "/api/v1/admin/security/tos",
    "source": "security.rs"
  },
  {
    "handler": "publish_tos",
    "method": "post",
    "path": "/api/v1/admin/security/tos",
    "source": "security.rs"
  },
  {
    "handler": "crate::trusted_proxy::get_cfg",
    "method": "get",
    "path": "/api/v1/admin/security/trusted-proxies",
    "source": "security.rs"
  },
  {
    "handler": "crate::trusted_proxy::put_cfg",
    "method": "put",
    "path": "/api/v1/admin/security/trusted-proxies",
    "source": "security.rs"
  },
  {
    "handler": "groups_list",
    "method": "get",
    "path": "/api/v1/admin/server-groups",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "groups_create",
    "method": "post",
    "path": "/api/v1/admin/server-groups",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "groups_delete",
    "method": "delete",
    "path": "/api/v1/admin/server-groups/{id}",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "groups_update",
    "method": "put",
    "path": "/api/v1/admin/server-groups/{id}",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "groups_members",
    "method": "get",
    "path": "/api/v1/admin/server-groups/{id}/servers",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "groups_set_members",
    "method": "put",
    "path": "/api/v1/admin/server-groups/{id}/servers",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/servers",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/servers",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "health",
    "method": "get",
    "path": "/api/v1/admin/servers/health",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "check_all",
    "method": "post",
    "path": "/api/v1/admin/servers/health/check",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/servers/{id}",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/servers/{id}",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "accounts",
    "method": "get",
    "path": "/api/v1/admin/servers/{id}/accounts",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "import",
    "method": "post",
    "path": "/api/v1/admin/servers/{id}/import",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "test",
    "method": "post",
    "path": "/api/v1/admin/servers/{id}/test",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "sync",
    "method": "post",
    "path": "/api/v1/admin/servers/{id}/vendor-catalog/sync",
    "source": "routes/vendor.rs"
  },
  {
    "handler": "admin_services",
    "method": "get",
    "path": "/api/v1/admin/services",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_service",
    "method": "get",
    "path": "/api/v1/admin/services/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_service_action",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/action",
    "source": "routes/billing.rs"
  },
  {
    "handler": "admin_cancel_change",
    "method": "delete",
    "path": "/api/v1/admin/services/{id}/change",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "admin_change",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/change",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "admin_lifecycle",
    "method": "get",
    "path": "/api/v1/admin/services/{id}/lifecycle",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "service_action",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/module",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "admin_custom",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/module/custom",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "admin_usage",
    "method": "get",
    "path": "/api/v1/admin/services/{id}/module/usage",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "service_state",
    "method": "get",
    "path": "/api/v1/admin/services/{id}/provisioning",
    "source": "routes/provisioning.rs"
  },
  {
    "handler": "admin_renew",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/renew-now",
    "source": "routes/renewals.rs"
  },
  {
    "handler": "admin_usage",
    "method": "get",
    "path": "/api/v1/admin/services/{id}/usage",
    "source": "routes/usage.rs"
  },
  {
    "handler": "record",
    "method": "post",
    "path": "/api/v1/admin/services/{id}/usage",
    "source": "routes/usage.rs"
  },
  {
    "handler": "get_add_funds",
    "method": "get",
    "path": "/api/v1/admin/settings/add-funds",
    "source": "routes/credit.rs"
  },
  {
    "handler": "put_add_funds",
    "method": "put",
    "path": "/api/v1/admin/settings/add-funds",
    "source": "routes/credit.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/autopay",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/settings/autopay",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "get_bank",
    "method": "get",
    "path": "/api/v1/admin/settings/bank-transfer",
    "source": "routes/settings.rs"
  },
  {
    "handler": "put_bank",
    "method": "put",
    "path": "/api/v1/admin/settings/bank-transfer",
    "source": "routes/settings.rs"
  },
  {
    "handler": "get_defaults",
    "method": "get",
    "path": "/api/v1/admin/settings/domain-defaults",
    "source": "routes/domains.rs"
  },
  {
    "handler": "put_defaults",
    "method": "put",
    "path": "/api/v1/admin/settings/domain-defaults",
    "source": "routes/domains.rs"
  },
  {
    "handler": "due_get",
    "method": "get",
    "path": "/api/v1/admin/settings/due-reminders",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "due_put",
    "method": "put",
    "path": "/api/v1/admin/settings/due-reminders",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/einvoice",
    "source": "routes/einvoice.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/settings/einvoice",
    "source": "routes/einvoice.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/fraud",
    "source": "routes/fraud.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/settings/fraud",
    "source": "routes/fraud.rs"
  },
  {
    "handler": "get_housekeeping",
    "method": "get",
    "path": "/api/v1/admin/settings/housekeeping",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "put_housekeeping",
    "method": "put",
    "path": "/api/v1/admin/settings/housekeeping",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "get_inactive",
    "method": "get",
    "path": "/api/v1/admin/settings/inactive-clients",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "put_inactive",
    "method": "put",
    "path": "/api/v1/admin/settings/inactive-clients",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "get_branding",
    "method": "get",
    "path": "/api/v1/admin/settings/invoice-branding",
    "source": "routes/invoice_pdf.rs"
  },
  {
    "handler": "put_branding",
    "method": "put",
    "path": "/api/v1/admin/settings/invoice-branding",
    "source": "routes/invoice_pdf.rs"
  },
  {
    "handler": "get_cfg",
    "method": "get",
    "path": "/api/v1/admin/settings/on-demand-renewals",
    "source": "routes/renewals.rs"
  },
  {
    "handler": "put_cfg",
    "method": "put",
    "path": "/api/v1/admin/settings/on-demand-renewals",
    "source": "routes/renewals.rs"
  },
  {
    "handler": "rules_get",
    "method": "get",
    "path": "/api/v1/admin/settings/order-approval",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "rules_put",
    "method": "put",
    "path": "/api/v1/admin/settings/order-approval",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/overdue",
    "source": "routes/overdue.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/settings/overdue",
    "source": "routes/overdue.rs"
  },
  {
    "handler": "get_proforma",
    "method": "get",
    "path": "/api/v1/admin/settings/proforma",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "put_proforma",
    "method": "put",
    "path": "/api/v1/admin/settings/proforma",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "admin_rv_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/registrant-verification",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_rv_settings_put",
    "method": "put",
    "path": "/api/v1/admin/settings/registrant-verification",
    "source": "routes/domains.rs"
  },
  {
    "handler": "get_reversal",
    "method": "get",
    "path": "/api/v1/admin/settings/reversal",
    "source": "routes/refunds.rs"
  },
  {
    "handler": "put_reversal",
    "method": "put",
    "path": "/api/v1/admin/settings/reversal",
    "source": "routes/refunds.rs"
  },
  {
    "handler": "get_smtp",
    "method": "get",
    "path": "/api/v1/admin/settings/smtp",
    "source": "routes/smtp.rs"
  },
  {
    "handler": "put_smtp",
    "method": "put",
    "path": "/api/v1/admin/settings/smtp",
    "source": "routes/smtp.rs"
  },
  {
    "handler": "test_smtp",
    "method": "post",
    "path": "/api/v1/admin/settings/smtp/test",
    "source": "routes/smtp.rs"
  },
  {
    "handler": "get_settings",
    "method": "get",
    "path": "/api/v1/admin/settings/tax",
    "source": "routes/tax.rs"
  },
  {
    "handler": "put_settings",
    "method": "put",
    "path": "/api/v1/admin/settings/tax",
    "source": "routes/tax.rs"
  },
  {
    "handler": "auto_close_get",
    "method": "get",
    "path": "/api/v1/admin/settings/ticket-auto-close",
    "source": "routes/support.rs"
  },
  {
    "handler": "auto_close_put",
    "method": "put",
    "path": "/api/v1/admin/settings/ticket-auto-close",
    "source": "routes/support.rs"
  },
  {
    "handler": "status",
    "method": "get",
    "path": "/api/v1/admin/setup-wizard",
    "source": "routes/setup_wizard.rs"
  },
  {
    "handler": "dismiss",
    "method": "put",
    "path": "/api/v1/admin/setup-wizard/dismissed",
    "source": "routes/setup_wizard.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/site",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_put",
    "method": "put",
    "path": "/api/v1/admin/site",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_pages",
    "method": "get",
    "path": "/api/v1/admin/site/pages",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_create",
    "method": "post",
    "path": "/api/v1/admin/site/pages",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_delete",
    "method": "delete",
    "path": "/api/v1/admin/site/pages/{id}",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_page",
    "method": "get",
    "path": "/api/v1/admin/site/pages/{id}",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_update",
    "method": "put",
    "path": "/api/v1/admin/site/pages/{id}",
    "source": "routes/site.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/ssl",
    "source": "routes/ssl.rs"
  },
  {
    "handler": "list_staff",
    "method": "get",
    "path": "/api/v1/admin/staff",
    "source": "routes/staff.rs"
  },
  {
    "handler": "staff_online",
    "method": "get",
    "path": "/api/v1/admin/staff-online",
    "source": "routes/admin_ops.rs"
  },
  {
    "handler": "departments",
    "method": "get",
    "path": "/api/v1/admin/support/departments",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "update_department",
    "method": "put",
    "path": "/api/v1/admin/support/departments/{id}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "pipe_now",
    "method": "post",
    "path": "/api/v1/admin/support/departments/{id}/pipe",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "spam_rules",
    "method": "get",
    "path": "/api/v1/admin/support/spam-rules",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "add_spam",
    "method": "post",
    "path": "/api/v1/admin/support/spam-rules",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "del_spam",
    "method": "delete",
    "path": "/api/v1/admin/support/spam-rules/{id}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "health",
    "method": "get",
    "path": "/api/v1/admin/system-health",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "get_status",
    "method": "get",
    "path": "/api/v1/admin/system/updates",
    "source": "updates.rs"
  },
  {
    "handler": "put_config",
    "method": "put",
    "path": "/api/v1/admin/system/updates",
    "source": "updates.rs"
  },
  {
    "handler": "check_now",
    "method": "post",
    "path": "/api/v1/admin/system/updates/check",
    "source": "updates.rs"
  },
  {
    "handler": "list_rules",
    "method": "get",
    "path": "/api/v1/admin/tax-rules",
    "source": "routes/tax.rs"
  },
  {
    "handler": "create_rule",
    "method": "post",
    "path": "/api/v1/admin/tax-rules",
    "source": "routes/tax.rs"
  },
  {
    "handler": "delete_rule",
    "method": "delete",
    "path": "/api/v1/admin/tax-rules/{id}",
    "source": "routes/tax.rs"
  },
  {
    "handler": "update_rule",
    "method": "put",
    "path": "/api/v1/admin/tax-rules/{id}",
    "source": "routes/tax.rs"
  },
  {
    "handler": "set_active_theme",
    "method": "put",
    "path": "/api/v1/admin/themes/active",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "canned_list",
    "method": "get",
    "path": "/api/v1/admin/ticket-canned",
    "source": "routes/support.rs"
  },
  {
    "handler": "canned_create",
    "method": "post",
    "path": "/api/v1/admin/ticket-canned",
    "source": "routes/support.rs"
  },
  {
    "handler": "canned_delete",
    "method": "delete",
    "path": "/api/v1/admin/ticket-canned/{id}",
    "source": "routes/support.rs"
  },
  {
    "handler": "canned_update",
    "method": "put",
    "path": "/api/v1/admin/ticket-canned/{id}",
    "source": "routes/support.rs"
  },
  {
    "handler": "admin_departments",
    "method": "get",
    "path": "/api/v1/admin/ticket-departments",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_create_department",
    "method": "post",
    "path": "/api/v1/admin/ticket-departments",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "department_slas",
    "method": "get",
    "path": "/api/v1/admin/ticket-departments-sla",
    "source": "routes/support.rs"
  },
  {
    "handler": "admin_update_department",
    "method": "put",
    "path": "/api/v1/admin/ticket-departments/{id}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "set_department_sla",
    "method": "put",
    "path": "/api/v1/admin/ticket-departments/{id}/sla",
    "source": "routes/support.rs"
  },
  {
    "handler": "rules",
    "method": "get",
    "path": "/api/v1/admin/ticket-escalations",
    "source": "routes/support.rs"
  },
  {
    "handler": "rule_create",
    "method": "post",
    "path": "/api/v1/admin/ticket-escalations",
    "source": "routes/support.rs"
  },
  {
    "handler": "rules_run",
    "method": "post",
    "path": "/api/v1/admin/ticket-escalations/run",
    "source": "routes/support.rs"
  },
  {
    "handler": "rule_delete",
    "method": "delete",
    "path": "/api/v1/admin/ticket-escalations/{id}",
    "source": "routes/support.rs"
  },
  {
    "handler": "rule_update",
    "method": "put",
    "path": "/api/v1/admin/ticket-escalations/{id}",
    "source": "routes/support.rs"
  },
  {
    "handler": "satisfaction",
    "method": "get",
    "path": "/api/v1/admin/ticket-satisfaction",
    "source": "routes/support.rs"
  },
  {
    "handler": "sla",
    "method": "get",
    "path": "/api/v1/admin/ticket-sla",
    "source": "routes/support.rs"
  },
  {
    "handler": "staff",
    "method": "get",
    "path": "/api/v1/admin/ticket-staff",
    "source": "routes/support.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/ticket-statuses",
    "source": "routes/ticket_statuses.rs"
  },
  {
    "handler": "delete",
    "method": "delete",
    "path": "/api/v1/admin/ticket-statuses/{slug}",
    "source": "routes/ticket_statuses.rs"
  },
  {
    "handler": "update",
    "method": "put",
    "path": "/api/v1/admin/ticket-statuses/{slug}",
    "source": "routes/ticket_statuses.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/tickets",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_open",
    "method": "post",
    "path": "/api/v1/admin/tickets",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_get",
    "method": "get",
    "path": "/api/v1/admin/tickets/{id}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_update",
    "method": "patch",
    "path": "/api/v1/admin/tickets/{id}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "merge",
    "method": "post",
    "path": "/api/v1/admin/tickets/{id}/merge",
    "source": "routes/support.rs"
  },
  {
    "handler": "admin_delete_message",
    "method": "delete",
    "path": "/api/v1/admin/tickets/{id}/messages/{mid}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_edit_message",
    "method": "put",
    "path": "/api/v1/admin/tickets/{id}/messages/{mid}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "admin_reply",
    "method": "post",
    "path": "/api/v1/admin/tickets/{id}/reply",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "split",
    "method": "post",
    "path": "/api/v1/admin/tickets/{id}/split",
    "source": "routes/support.rs"
  },
  {
    "handler": "set_tags",
    "method": "put",
    "path": "/api/v1/admin/tickets/{id}/tags",
    "source": "routes/support.rs"
  },
  {
    "handler": "time_list",
    "method": "get",
    "path": "/api/v1/admin/tickets/{id}/time",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "time_add",
    "method": "post",
    "path": "/api/v1/admin/tickets/{id}/time",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "time_del",
    "method": "delete",
    "path": "/api/v1/admin/tickets/{id}/time/{entry}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "get_watchers",
    "method": "get",
    "path": "/api/v1/admin/tickets/{id}/watchers",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "put_watchers",
    "method": "put",
    "path": "/api/v1/admin/tickets/{id}/watchers",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "admin_download",
    "method": "get",
    "path": "/api/v1/admin/tickets/{tid}/attachments/{id}",
    "source": "routes/ticket_attachments.rs"
  },
  {
    "handler": "admin_tlds",
    "method": "get",
    "path": "/api/v1/admin/tlds",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_tld_upsert",
    "method": "put",
    "path": "/api/v1/admin/tlds",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_tld_adjust",
    "method": "post",
    "path": "/api/v1/admin/tlds/bulk-adjust",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_tld_copy",
    "method": "post",
    "path": "/api/v1/admin/tlds/copy-currency",
    "source": "routes/domains.rs"
  },
  {
    "handler": "admin_tld_delete",
    "method": "delete",
    "path": "/api/v1/admin/tlds/{tld}/{currency}",
    "source": "routes/domains.rs"
  },
  {
    "handler": "list_todos",
    "method": "get",
    "path": "/api/v1/admin/todos",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "create_todo",
    "method": "post",
    "path": "/api/v1/admin/todos",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "delete_todo",
    "method": "delete",
    "path": "/api/v1/admin/todos/{id}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "update_todo",
    "method": "put",
    "path": "/api/v1/admin/todos/{id}",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/tracked-links",
    "source": "routes/link_tracking.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/admin/tracked-links",
    "source": "routes/link_tracking.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/tracked-links/{id}",
    "source": "routes/link_tracking.rs"
  },
  {
    "handler": "admin_transactions",
    "method": "get",
    "path": "/api/v1/admin/transactions",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "admin_update_transaction",
    "method": "patch",
    "path": "/api/v1/admin/transactions/{id}",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/admin/translations",
    "source": "translations.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/translations",
    "source": "translations.rs"
  },
  {
    "handler": "put",
    "method": "put",
    "path": "/api/v1/admin/translations",
    "source": "translations.rs"
  },
  {
    "handler": "metrics",
    "method": "get",
    "path": "/api/v1/admin/usage-metrics",
    "source": "routes/usage.rs"
  },
  {
    "handler": "metric_create",
    "method": "post",
    "path": "/api/v1/admin/usage-metrics",
    "source": "routes/usage.rs"
  },
  {
    "handler": "metric_delete",
    "method": "delete",
    "path": "/api/v1/admin/usage-metrics/{id}",
    "source": "routes/usage.rs"
  },
  {
    "handler": "metric_update",
    "method": "put",
    "path": "/api/v1/admin/usage-metrics/{id}",
    "source": "routes/usage.rs"
  },
  {
    "handler": "bill_now",
    "method": "post",
    "path": "/api/v1/admin/usage/bill",
    "source": "routes/usage.rs"
  },
  {
    "handler": "sample_now",
    "method": "post",
    "path": "/api/v1/admin/usage/sample",
    "source": "routes/usage.rs"
  },
  {
    "handler": "list_users",
    "method": "get",
    "path": "/api/v1/admin/users",
    "source": "routes/admin.rs"
  },
  {
    "handler": "admin_revoke_all",
    "method": "post",
    "path": "/api/v1/admin/users/{id}/api-keys/revoke-all",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "login_as_user",
    "method": "post",
    "path": "/api/v1/admin/users/{id}/login-as",
    "source": "security.rs"
  },
  {
    "handler": "admin_revoke",
    "method": "delete",
    "path": "/api/v1/admin/users/{id}/passkeys",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "admin_list",
    "method": "get",
    "path": "/api/v1/admin/users/{id}/passkeys",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "set_roles",
    "method": "put",
    "path": "/api/v1/admin/users/{id}/roles",
    "source": "routes/staff.rs"
  },
  {
    "handler": "verify_email",
    "method": "post",
    "path": "/api/v1/admin/users/{id}/verify-email",
    "source": "routes/admin.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/admin/vendor-catalog",
    "source": "routes/vendor.rs"
  },
  {
    "handler": "import",
    "method": "post",
    "path": "/api/v1/admin/vendor-catalog/{id}/import",
    "source": "routes/vendor.rs"
  },
  {
    "handler": "reprice",
    "method": "put",
    "path": "/api/v1/admin/vendor-catalog/{id}/markup",
    "source": "routes/vendor.rs"
  },
  {
    "handler": "track",
    "method": "get",
    "path": "/api/v1/affiliates/r/{code}",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "track_json",
    "method": "post",
    "path": "/api/v1/affiliates/track",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/api-keys",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "create",
    "method": "post",
    "path": "/api/v1/api-keys",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "revoke",
    "method": "delete",
    "path": "/api/v1/api-keys/{id}",
    "source": "routes/api_keys.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/auth/avatar",
    "source": "routes/avatars.rs"
  },
  {
    "handler": "upload",
    "method": "put",
    "path": "/api/v1/auth/avatar",
    "source": "routes/avatars.rs"
  },
  {
    "handler": "finish",
    "method": "post",
    "path": "/api/v1/auth/duo/finish",
    "source": "duo.rs"
  },
  {
    "handler": "start",
    "method": "post",
    "path": "/api/v1/auth/duo/start",
    "source": "duo.rs"
  },
  {
    "handler": "resend",
    "method": "post",
    "path": "/api/v1/auth/email/resend",
    "source": "routes/account.rs"
  },
  {
    "handler": "verify",
    "method": "post",
    "path": "/api/v1/auth/email/verify",
    "source": "routes/account.rs"
  },
  {
    "handler": "impersonation_status",
    "method": "get",
    "path": "/api/v1/auth/impersonation",
    "source": "security.rs"
  },
  {
    "handler": "stop_impersonation",
    "method": "post",
    "path": "/api/v1/auth/impersonation/stop",
    "source": "security.rs"
  },
  {
    "handler": "set_locale",
    "method": "put",
    "path": "/api/v1/auth/locale",
    "source": "routes/auth.rs"
  },
  {
    "handler": "login",
    "method": "post",
    "path": "/api/v1/auth/login",
    "source": "routes/auth.rs"
  },
  {
    "handler": "logout",
    "method": "post",
    "path": "/api/v1/auth/logout",
    "source": "routes/auth.rs"
  },
  {
    "handler": "me",
    "method": "get",
    "path": "/api/v1/auth/me",
    "source": "routes/auth.rs"
  },
  {
    "handler": "status",
    "method": "get",
    "path": "/api/v1/auth/mfa",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "regenerate",
    "method": "post",
    "path": "/api/v1/auth/mfa/backup-codes",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "disable",
    "method": "post",
    "path": "/api/v1/auth/mfa/disable",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "enable",
    "method": "post",
    "path": "/api/v1/auth/mfa/enable",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "setup",
    "method": "post",
    "path": "/api/v1/auth/mfa/setup",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "verify",
    "method": "post",
    "path": "/api/v1/auth/mfa/verify",
    "source": "routes/mfa.rs"
  },
  {
    "handler": "providers",
    "method": "get",
    "path": "/api/v1/auth/oauth/providers",
    "source": "oauth.rs"
  },
  {
    "handler": "callback",
    "method": "get",
    "path": "/api/v1/auth/oauth/{id}/callback",
    "source": "oauth.rs"
  },
  {
    "handler": "start",
    "method": "get",
    "path": "/api/v1/auth/oauth/{id}/start",
    "source": "oauth.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/auth/passkeys",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "discover_finish",
    "method": "post",
    "path": "/api/v1/auth/passkeys/discover/finish",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "discover_start",
    "method": "post",
    "path": "/api/v1/auth/passkeys/discover/start",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "login_finish",
    "method": "post",
    "path": "/api/v1/auth/passkeys/login/finish",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "login_start",
    "method": "post",
    "path": "/api/v1/auth/passkeys/login/start",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "reauth_finish",
    "method": "post",
    "path": "/api/v1/auth/passkeys/reauth/finish",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "reauth_start",
    "method": "post",
    "path": "/api/v1/auth/passkeys/reauth/start",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "register_finish",
    "method": "post",
    "path": "/api/v1/auth/passkeys/register/finish",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "register_start",
    "method": "post",
    "path": "/api/v1/auth/passkeys/register/start",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "remove",
    "method": "delete",
    "path": "/api/v1/auth/passkeys/{id}",
    "source": "routes/passkeys.rs"
  },
  {
    "handler": "change_password",
    "method": "post",
    "path": "/api/v1/auth/password/change",
    "source": "routes/admin_security.rs"
  },
  {
    "handler": "forgot",
    "method": "post",
    "path": "/api/v1/auth/password/forgot",
    "source": "routes/account.rs"
  },
  {
    "handler": "reset",
    "method": "post",
    "path": "/api/v1/auth/password/reset",
    "source": "routes/account.rs"
  },
  {
    "handler": "reauth",
    "method": "post",
    "path": "/api/v1/auth/reauth",
    "source": "routes/admin_security.rs"
  },
  {
    "handler": "register",
    "method": "post",
    "path": "/api/v1/auth/register",
    "source": "routes/auth.rs"
  },
  {
    "handler": "logout",
    "method": "post",
    "path": "/api/v1/auth/saml/logout",
    "source": "saml.rs"
  },
  {
    "handler": "providers",
    "method": "get",
    "path": "/api/v1/auth/saml/providers",
    "source": "saml.rs"
  },
  {
    "handler": "revoke_other_sessions",
    "method": "delete",
    "path": "/api/v1/auth/sessions",
    "source": "routes/auth.rs"
  },
  {
    "handler": "list_sessions",
    "method": "get",
    "path": "/api/v1/auth/sessions",
    "source": "routes/auth.rs"
  },
  {
    "handler": "revoke_session",
    "method": "delete",
    "path": "/api/v1/auth/sessions/{id}",
    "source": "routes/auth.rs"
  },
  {
    "handler": "serve",
    "method": "get",
    "path": "/api/v1/avatars/{id}",
    "source": "routes/avatars.rs"
  },
  {
    "handler": "challenge",
    "method": "get",
    "path": "/api/v1/captcha/challenge",
    "source": "captcha.rs"
  },
  {
    "handler": "public_config",
    "method": "get",
    "path": "/api/v1/captcha/config",
    "source": "captcha.rs"
  },
  {
    "handler": "public_catalog",
    "method": "get",
    "path": "/api/v1/catalog",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "public_bundles",
    "method": "get",
    "path": "/api/v1/catalog/bundles",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "product_extras",
    "method": "get",
    "path": "/api/v1/catalog/products/{id}/extras",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "public_recs",
    "method": "get",
    "path": "/api/v1/catalog/products/{id}/recommendations",
    "source": "routes/bundles.rs"
  },
  {
    "handler": "start",
    "method": "post",
    "path": "/api/v1/chat/sessions",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "visitor_close",
    "method": "post",
    "path": "/api/v1/chat/sessions/{id}/close",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "visitor_messages",
    "method": "get",
    "path": "/api/v1/chat/sessions/{id}/messages",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "visitor_post",
    "method": "post",
    "path": "/api/v1/chat/sessions/{id}/messages",
    "source": "routes/live_chat.rs"
  },
  {
    "handler": "client_access",
    "method": "get",
    "path": "/api/v1/client/access",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/affiliate",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "client_enroll",
    "method": "post",
    "path": "/api/v1/client/affiliate",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "client_materials",
    "method": "get",
    "path": "/api/v1/client/affiliate/materials",
    "source": "routes/affiliate_extras.rs"
  },
  {
    "handler": "client_payout",
    "method": "post",
    "path": "/api/v1/client/affiliate/payouts",
    "source": "routes/affiliates.rs"
  },
  {
    "handler": "client_auto_pay",
    "method": "put",
    "path": "/api/v1/client/billing/auto-pay",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/billing/payment-methods",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "client_add",
    "method": "post",
    "path": "/api/v1/client/billing/payment-methods",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "client_remove",
    "method": "delete",
    "path": "/api/v1/client/billing/payment-methods/{id}",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "client_default",
    "method": "post",
    "path": "/api/v1/client/billing/payment-methods/{id}/default",
    "source": "routes/payment_methods.rs"
  },
  {
    "handler": "checkout",
    "method": "post",
    "path": "/api/v1/client/checkout",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_contacts",
    "method": "get",
    "path": "/api/v1/client/contacts",
    "source": "routes/customers.rs"
  },
  {
    "handler": "client_add_contact",
    "method": "post",
    "path": "/api/v1/client/contacts",
    "source": "routes/customers.rs"
  },
  {
    "handler": "client_delete_contact",
    "method": "delete",
    "path": "/api/v1/client/contacts/{id}",
    "source": "routes/customers.rs"
  },
  {
    "handler": "client_check",
    "method": "post",
    "path": "/api/v1/client/coupons/check",
    "source": "routes/coupons.rs"
  },
  {
    "handler": "client_credit",
    "method": "get",
    "path": "/api/v1/client/credit",
    "source": "routes/credit.rs"
  },
  {
    "handler": "client_add_funds_info",
    "method": "get",
    "path": "/api/v1/client/credit/add-funds",
    "source": "routes/credit.rs"
  },
  {
    "handler": "client_add_funds",
    "method": "post",
    "path": "/api/v1/client/credit/add-funds",
    "source": "routes/credit.rs"
  },
  {
    "handler": "client_dashboard",
    "method": "get",
    "path": "/api/v1/client/dashboard",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/domains",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_order",
    "method": "post",
    "path": "/api/v1/client/domains",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_bulk",
    "method": "post",
    "path": "/api/v1/client/domains/bulk",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_check",
    "method": "get",
    "path": "/api/v1/client/domains/check",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_fields",
    "method": "get",
    "path": "/api/v1/client/domains/fields",
    "source": "routes/domain_pricing.rs"
  },
  {
    "handler": "client_tlds",
    "method": "get",
    "path": "/api/v1/client/domains/tlds",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/domains/{id}",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_addons",
    "method": "put",
    "path": "/api/v1/client/domains/{id}/addons",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_auto_renew",
    "method": "put",
    "path": "/api/v1/client/domains/{id}/auto-renew",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_contact",
    "method": "put",
    "path": "/api/v1/client/domains/{id}/contact",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_dns",
    "method": "get",
    "path": "/api/v1/client/domains/{id}/dns",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_dns_put",
    "method": "put",
    "path": "/api/v1/client/domains/{id}/dns",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_epp",
    "method": "post",
    "path": "/api/v1/client/domains/{id}/epp",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_ns",
    "method": "put",
    "path": "/api/v1/client/domains/{id}/nameservers",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_rv_resend",
    "method": "post",
    "path": "/api/v1/client/domains/{id}/registrant-verification/resend",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_renew",
    "method": "post",
    "path": "/api/v1/client/domains/{id}/renew",
    "source": "routes/domains.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/downloads",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "client_file",
    "method": "get",
    "path": "/api/v1/client/downloads/{id}",
    "source": "routes/downloads.rs"
  },
  {
    "handler": "get_prefs",
    "method": "get",
    "path": "/api/v1/client/email-preferences",
    "source": "routes/store.rs"
  },
  {
    "handler": "put_prefs",
    "method": "put",
    "path": "/api/v1/client/email-preferences",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/emails",
    "source": "routes/email_log.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/emails/{id}",
    "source": "routes/email_log.rs"
  },
  {
    "handler": "client_values",
    "method": "get",
    "path": "/api/v1/client/fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "client_set_values",
    "method": "put",
    "path": "/api/v1/client/fields",
    "source": "routes/client_extras.rs"
  },
  {
    "handler": "client_gateways",
    "method": "get",
    "path": "/api/v1/client/gateways",
    "source": "routes/billing.rs"
  },
  {
    "handler": "gift_redeem",
    "method": "post",
    "path": "/api/v1/client/gift-cards/redeem",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "client_home",
    "method": "get",
    "path": "/api/v1/client/home",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_invoices",
    "method": "get",
    "path": "/api/v1/client/invoices",
    "source": "routes/billing.rs"
  },
  {
    "handler": "mass_pay",
    "method": "post",
    "path": "/api/v1/client/invoices/mass-pay",
    "source": "routes/bulk.rs"
  },
  {
    "handler": "client_merge",
    "method": "post",
    "path": "/api/v1/client/invoices/merge",
    "source": "routes/invoice_ops.rs"
  },
  {
    "handler": "client_invoice",
    "method": "get",
    "path": "/api/v1/client/invoices/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_apply",
    "method": "post",
    "path": "/api/v1/client/invoices/{id}/apply-credit",
    "source": "routes/credit.rs"
  },
  {
    "handler": "client_invoice_gateways",
    "method": "get",
    "path": "/api/v1/client/invoices/{id}/gateways",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "client_pay",
    "method": "post",
    "path": "/api/v1/client/invoices/{id}/pay",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_pdf",
    "method": "get",
    "path": "/api/v1/client/invoices/{id}/pdf",
    "source": "routes/invoice_pdf.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/invoices/{id}/refunds",
    "source": "routes/refunds.rs"
  },
  {
    "handler": "client_ubl",
    "method": "get",
    "path": "/api/v1/client/invoices/{id}/ubl",
    "source": "routes/einvoice.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/kyc",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "client_upload",
    "method": "post",
    "path": "/api/v1/client/kyc/documents",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "client_delete",
    "method": "delete",
    "path": "/api/v1/client/kyc/documents/{id}",
    "source": "routes/kyc.rs"
  },
  {
    "handler": "login_history",
    "method": "get",
    "path": "/api/v1/client/login-history",
    "source": "routes/store.rs"
  },
  {
    "handler": "my_pref",
    "method": "get",
    "path": "/api/v1/client/marketing",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "set_pref",
    "method": "put",
    "path": "/api/v1/client/marketing",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "client_orders",
    "method": "get",
    "path": "/api/v1/client/orders",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_place_order",
    "method": "post",
    "path": "/api/v1/client/orders",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_order",
    "method": "get",
    "path": "/api/v1/client/orders/{id}",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_complete",
    "method": "post",
    "path": "/api/v1/client/payments/{id}/complete",
    "source": "routes/gateways.rs"
  },
  {
    "handler": "client_profile",
    "method": "get",
    "path": "/api/v1/client/profile",
    "source": "routes/customers.rs"
  },
  {
    "handler": "client_update",
    "method": "put",
    "path": "/api/v1/client/profile",
    "source": "routes/customers.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/projects",
    "source": "routes/projects.rs"
  },
  {
    "handler": "client_detail",
    "method": "get",
    "path": "/api/v1/client/projects/{id}",
    "source": "routes/projects.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/quotes",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/quotes/{id}",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "client_accept",
    "method": "post",
    "path": "/api/v1/client/quotes/{id}/accept",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "client_decline",
    "method": "post",
    "path": "/api/v1/client/quotes/{id}/decline",
    "source": "routes/quotes.rs"
  },
  {
    "handler": "client_pdf",
    "method": "get",
    "path": "/api/v1/client/quotes/{id}/pdf",
    "source": "routes/quote_pdf.rs"
  },
  {
    "handler": "client_cfg",
    "method": "get",
    "path": "/api/v1/client/renewals/config",
    "source": "routes/renewals.rs"
  },
  {
    "handler": "client_search",
    "method": "get",
    "path": "/api/v1/client/search",
    "source": "routes/admin_tools.rs"
  },
  {
    "handler": "client_services",
    "method": "get",
    "path": "/api/v1/client/services",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_service",
    "method": "get",
    "path": "/api/v1/client/services/{id}",
    "source": "routes/billing.rs"
  },
  {
    "handler": "client_withdraw_cancel",
    "method": "delete",
    "path": "/api/v1/client/services/{id}/cancellation",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "client_request_cancel",
    "method": "post",
    "path": "/api/v1/client/services/{id}/cancellation",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "client_cancel_change",
    "method": "delete",
    "path": "/api/v1/client/services/{id}/change",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "client_change",
    "method": "post",
    "path": "/api/v1/client/services/{id}/change",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "client_lifecycle",
    "method": "get",
    "path": "/api/v1/client/services/{id}/lifecycle",
    "source": "routes/service_changes.rs"
  },
  {
    "handler": "client_panel",
    "method": "get",
    "path": "/api/v1/client/services/{id}/module",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "client_action",
    "method": "post",
    "path": "/api/v1/client/services/{id}/module/{action}",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "client_renew",
    "method": "post",
    "path": "/api/v1/client/services/{id}/renew-now",
    "source": "routes/renewals.rs"
  },
  {
    "handler": "start",
    "method": "post",
    "path": "/api/v1/client/services/{id}/sso",
    "source": "routes/sso.rs"
  },
  {
    "handler": "client_usage",
    "method": "get",
    "path": "/api/v1/client/services/{id}/usage",
    "source": "routes/usage.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/ssl",
    "source": "routes/ssl.rs"
  },
  {
    "handler": "list_contacts",
    "method": "get",
    "path": "/api/v1/client/subaccounts",
    "source": "routes/store.rs"
  },
  {
    "handler": "add_contact",
    "method": "post",
    "path": "/api/v1/client/subaccounts",
    "source": "routes/store.rs"
  },
  {
    "handler": "invite_contact",
    "method": "post",
    "path": "/api/v1/client/subaccounts/invite",
    "source": "routes/store.rs"
  },
  {
    "handler": "remove_contact",
    "method": "delete",
    "path": "/api/v1/client/subaccounts/{id}",
    "source": "routes/store.rs"
  },
  {
    "handler": "update_contact",
    "method": "put",
    "path": "/api/v1/client/subaccounts/{id}",
    "source": "routes/store.rs"
  },
  {
    "handler": "client_departments",
    "method": "get",
    "path": "/api/v1/client/ticket-departments",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_list",
    "method": "get",
    "path": "/api/v1/client/tickets",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_open",
    "method": "post",
    "path": "/api/v1/client/tickets",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_get",
    "method": "get",
    "path": "/api/v1/client/tickets/{id}",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_close",
    "method": "post",
    "path": "/api/v1/client/tickets/{id}/close",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_rate",
    "method": "post",
    "path": "/api/v1/client/tickets/{id}/rate",
    "source": "routes/support.rs"
  },
  {
    "handler": "client_reply",
    "method": "post",
    "path": "/api/v1/client/tickets/{id}/reply",
    "source": "routes/tickets.rs"
  },
  {
    "handler": "client_download",
    "method": "get",
    "path": "/api/v1/client/tickets/{tid}/attachments/{id}",
    "source": "routes/ticket_attachments.rs"
  },
  {
    "handler": "client_verify_vat",
    "method": "post",
    "path": "/api/v1/client/vat/verify",
    "source": "routes/tax.rs"
  },
  {
    "handler": "handle",
    "method": "post",
    "path": "/api/v1/compat/whmcs",
    "source": "whmcs_api.rs"
  },
  {
    "handler": "list_currencies",
    "method": "get",
    "path": "/api/v1/currencies",
    "source": "routes/catalog.rs"
  },
  {
    "handler": "product_feed",
    "method": "get",
    "path": "/api/v1/feeds/products/{slug}",
    "source": "routes/data_feeds.rs"
  },
  {
    "handler": "tld_feed",
    "method": "get",
    "path": "/api/v1/feeds/tlds/{tld}",
    "source": "routes/data_feeds.rs"
  },
  {
    "handler": "follow",
    "method": "get",
    "path": "/api/v1/go/{slug}",
    "source": "routes/link_tracking.rs"
  },
  {
    "handler": "create_cart",
    "method": "post",
    "path": "/api/v1/headless/carts",
    "source": "routes/headless.rs"
  },
  {
    "handler": "get_cart",
    "method": "get",
    "path": "/api/v1/headless/carts/{id}",
    "source": "routes/headless.rs"
  },
  {
    "handler": "update_cart",
    "method": "put",
    "path": "/api/v1/headless/carts/{id}",
    "source": "routes/headless.rs"
  },
  {
    "handler": "checkout",
    "method": "post",
    "path": "/api/v1/headless/carts/{id}/checkout",
    "source": "routes/headless.rs"
  },
  {
    "handler": "catalog",
    "method": "get",
    "path": "/api/v1/headless/catalog",
    "source": "routes/headless.rs"
  },
  {
    "handler": "pay",
    "method": "post",
    "path": "/api/v1/headless/invoices/{id}/pay",
    "source": "routes/headless.rs"
  },
  {
    "handler": "order_status",
    "method": "get",
    "path": "/api/v1/headless/orders/{id}",
    "source": "routes/headless.rs"
  },
  {
    "handler": "languages",
    "method": "get",
    "path": "/api/v1/i18n",
    "source": "routes/i18n.rs"
  },
  {
    "handler": "messages",
    "method": "get",
    "path": "/api/v1/i18n/{lang}",
    "source": "routes/i18n.rs"
  },
  {
    "handler": "license_verify",
    "method": "post",
    "path": "/api/v1/licensing/verify",
    "source": "routes/modules_ext.rs"
  },
  {
    "handler": "authorize_info",
    "method": "get",
    "path": "/api/v1/oauth/authorize",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "authorize_decide",
    "method": "post",
    "path": "/api/v1/oauth/authorize",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "spec",
    "method": "get",
    "path": "/api/v1/openapi.json",
    "source": "routes/openapi.rs"
  },
  {
    "handler": "event_logger_routes::{closure}",
    "method": "get",
    "path": "/api/v1/plugins/event-logger/recent",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "event_logger_routes::{closure}",
    "method": "get",
    "path": "/api/v1/plugins/event-logger/summary",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "ui_entries",
    "method": "get",
    "path": "/api/v1/plugins/ui",
    "source": "routes/plugins.rs"
  },
  {
    "handler": "public_announcements",
    "method": "get",
    "path": "/api/v1/public/announcements",
    "source": "routes/content.rs"
  },
  {
    "handler": "rss",
    "method": "get",
    "path": "/api/v1/public/announcements/rss.xml",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "public_announcement",
    "method": "get",
    "path": "/api/v1/public/announcements/{id}",
    "source": "routes/content.rs"
  },
  {
    "handler": "contact_submit",
    "method": "post",
    "path": "/api/v1/public/contact",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "public_check",
    "method": "get",
    "path": "/api/v1/public/domains/check",
    "source": "routes/domains.rs"
  },
  {
    "handler": "public_tlds",
    "method": "get",
    "path": "/api/v1/public/domains/tlds",
    "source": "routes/domains.rs"
  },
  {
    "handler": "public_verify_registrant",
    "method": "post",
    "path": "/api/v1/public/domains/verify-registrant",
    "source": "routes/domains.rs"
  },
  {
    "handler": "public_whois",
    "method": "get",
    "path": "/api/v1/public/domains/whois",
    "source": "routes/domains.rs"
  },
  {
    "handler": "public_general",
    "method": "get",
    "path": "/api/v1/public/general",
    "source": "routes/general_settings.rs"
  },
  {
    "handler": "public_kb",
    "method": "get",
    "path": "/api/v1/public/kb",
    "source": "routes/content.rs"
  },
  {
    "handler": "public_article",
    "method": "get",
    "path": "/api/v1/public/kb/articles/{slug}",
    "source": "routes/content.rs"
  },
  {
    "handler": "public_vote",
    "method": "post",
    "path": "/api/v1/public/kb/articles/{slug}/vote",
    "source": "routes/content.rs"
  },
  {
    "handler": "public_suggest",
    "method": "get",
    "path": "/api/v1/public/kb/suggest",
    "source": "routes/content.rs"
  },
  {
    "handler": "tag_cloud",
    "method": "get",
    "path": "/api/v1/public/kb/tags",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "by_tag",
    "method": "get",
    "path": "/api/v1/public/kb/tags/{tag}",
    "source": "routes/support_ext.rs"
  },
  {
    "handler": "public_status",
    "method": "get",
    "path": "/api/v1/public/network-status",
    "source": "routes/network_status.rs"
  },
  {
    "handler": "public_site",
    "method": "get",
    "path": "/api/v1/public/site",
    "source": "routes/site.rs"
  },
  {
    "handler": "public_page",
    "method": "get",
    "path": "/api/v1/public/site/pages/{slug}",
    "source": "routes/site.rs"
  },
  {
    "handler": "consume",
    "method": "post",
    "path": "/api/v1/sso/consume",
    "source": "routes/sso.rs"
  },
  {
    "handler": "acs",
    "method": "post",
    "path": "/api/v1/sso/saml/{id}/acs",
    "source": "saml.rs"
  },
  {
    "handler": "login",
    "method": "get",
    "path": "/api/v1/sso/saml/{id}/login",
    "source": "saml.rs"
  },
  {
    "handler": "metadata",
    "method": "get",
    "path": "/api/v1/sso/saml/{id}/metadata",
    "source": "saml.rs"
  },
  {
    "handler": "slo",
    "method": "get",
    "path": "/api/v1/sso/saml/{id}/slo",
    "source": "saml.rs"
  },
  {
    "handler": "get_cart",
    "method": "get",
    "path": "/api/v1/store/carts/{id}",
    "source": "routes/store.rs"
  },
  {
    "handler": "put_cart",
    "method": "put",
    "path": "/api/v1/store/carts/{id}",
    "source": "routes/store.rs"
  },
  {
    "handler": "store_gateways",
    "method": "get",
    "path": "/api/v1/store/gateways",
    "source": "routes/store.rs"
  },
  {
    "handler": "public_group_form",
    "method": "get",
    "path": "/api/v1/store/groups/{id}/order-form",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "public_form",
    "method": "get",
    "path": "/api/v1/store/order-forms/{slug}",
    "source": "routes/order_forms.rs"
  },
  {
    "handler": "list_themes",
    "method": "get",
    "path": "/api/v1/themes",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "active_theme",
    "method": "get",
    "path": "/api/v1/themes/active",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "theme_asset",
    "method": "get",
    "path": "/api/v1/themes/{id}/assets/{*file}",
    "source": "routes/extensions.rs"
  },
  {
    "handler": "list",
    "method": "get",
    "path": "/api/v1/ticket-statuses",
    "source": "routes/ticket_statuses.rs"
  },
  {
    "handler": "upload",
    "method": "post",
    "path": "/api/v1/tickets/attachments",
    "source": "routes/ticket_attachments.rs"
  },
  {
    "handler": "unsub_lookup",
    "method": "get",
    "path": "/api/v1/unsubscribe/{token}",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "unsub_apply",
    "method": "post",
    "path": "/api/v1/unsubscribe/{token}",
    "source": "routes/campaigns.rs"
  },
  {
    "handler": "receive",
    "method": "post",
    "path": "/api/v1/webhooks/{gateway}",
    "source": "routes/webhooks.rs"
  },
  {
    "handler": "root_router::{closure}",
    "method": "get",
    "path": "/docs",
    "source": "dev_docs.rs"
  },
  {
    "handler": "serve",
    "method": "get",
    "path": "/docs/",
    "source": "dev_docs.rs"
  },
  {
    "handler": "serve",
    "method": "get",
    "path": "/docs/{*path}",
    "source": "dev_docs.rs"
  },
  {
    "handler": "healthz",
    "method": "get",
    "path": "/healthz",
    "source": "routes/health.rs"
  },
  {
    "handler": "handle",
    "method": "post",
    "path": "/includes/api.php",
    "source": "whmcs_api.rs"
  },
  {
    "handler": "jwks",
    "method": "get",
    "path": "/oauth/jwks",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "revoke",
    "method": "post",
    "path": "/oauth/revoke",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "token",
    "method": "post",
    "path": "/oauth/token",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "userinfo",
    "method": "get",
    "path": "/oauth/userinfo",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "userinfo",
    "method": "post",
    "path": "/oauth/userinfo",
    "source": "oidc_provider.rs"
  },
  {
    "handler": "readyz",
    "method": "get",
    "path": "/readyz",
    "source": "routes/health.rs"
  }
]