Skip to main content
GET
/
capabilities
Get service capabilities
curl --request GET \
  --url https://kyc.provider.example/opencharge/capabilities \
  --header 'X-OC-ID: <x-oc-id>' \
  --header 'X-OC-Nonce: <x-oc-nonce>' \
  --header 'X-OC-Signature: <x-oc-signature>' \
  --header 'X-OC-Timestamp: <x-oc-timestamp>'
{
  "ocid": 540,
  "name": "TrustVerify KYC",
  "capabilities": [
    "kyc.grant",
    "kyc.validate",
    "kyc.data"
  ],
  "supported_grants": [
    "name",
    "email",
    "phone",
    "date_of_birth",
    "nationality",
    "address",
    "id_card",
    "passport",
    "driver_license",
    "proof_of_address",
    "liveness",
    "aml"
  ]
}
Unlike the public /metadata.json, this authenticated endpoint returns capabilities specific to the requesting OCID based on your service preferences or partnership agreements.

Use Cases

Use this endpoint to provide differentiated access:
  • Preferred partners - Grant additional capabilities to strategic partners
  • Restricted access - Limit certain OCIDs to specific operations
  • Custom settlement - Offer different settlement options per partner

Example Response

{
  "ocid": 500,
  "name": "Coffee Shop",
  "capabilities": [
    "orders.create",
    "orders.status",
    "transfer.webhook"
  ],
  "settlement": {
    "currencies": ["USD"],
    "accepts": [100, 101]
  }
}

Authentication

Verify the request signature using the caller’s public key from their /metadata.json endpoint. See Request Authentication for details.

Headers

X-OC-ID
string
required

Caller's OCID

X-OC-Timestamp
string
required

Unix timestamp in seconds

X-OC-Nonce
string
required

Unique request identifier

X-OC-Signature
string
required

secp256k1 ECDSA signature

Response

Service capabilities for the authenticated partner

ocid
integer
required
name
string
required
capabilities
string[]
required
supported_grants
enum<string>[]

List of KYC grants this provider supports

Available options:
name,
email,
phone,
date_of_birth,
nationality,
address,
id_card,
passport,
driver_license,
proof_of_address,
liveness,
aml