Spec → ServiceCapability
What is ServiceCapability? One service a provider can deliver: what, where, at what price model, under which certification.
The pricing model is a three-way honesty contract. fixed means the price is binding and agents may present it as final. from is a floor. quote_only requires price_notes so an agent can set expectations instead of guessing. Required credential types make regulatory reality machine-checkable: a CP12 capability without a Gas Safe reference fails certification.
Fields
| Field | Type | Notes |
|---|---|---|
service_code | string · enum | REQUIRED Closed list v0.1; extension via 'other' + service_label. New codes via governance process. |
service_label | string | Human/agent-readable name. Required when service_code='other'. |
coverage | array<string> | Optional narrowing of provider coverage for this service. |
pricing | object | REQUIRED model=fixed → price binding; from → price is minimum; quote_only → no price fields. |
required_credential_types | array<string> | Credential types that MUST appear in provider.credentials for this capability to be valid, e.g. ['gas_safe']. |
lead_time_days_min | integer | |
duration_minutes_typical | integer | |
certificate_issued | boolean | True if the job produces a compliance certificate/report deliverable. |
Example
{
"service_code": "cp12_gas_safety",
"pricing": {
"model": "fixed",
"price": {
"amount": 68.0,
"currency": "GBP",
"vat_treatment": "ex_vat"
}
},
"certificate_issued": true,
"required_credential_types": [
"gas_safe"
],
"lead_time_days_min": 2
}
Schema: service-capability.schema.json (JSON Schema 2020-12, MIT).