Skip to main content
PATCH
https://sandbox.api.hopae.com/connect/v1
/
apps
/
{client_id}
curl -X PATCH \
  -H "Authorization: Bearer sk_workspace_test_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "New App Name",
    "branding": { "name": "New Brand", "logo": "iVBORw0KGgoAAAANSUhEUgAA..." },
    "redirect_uris": ["https://app.example.com/callback", "https://app.example.com/alt"],
    "verification": {
      "request_attributes": ["name", "birthdate"],
      "providers": [
        { "provider_id": "smartid", "enabled": true, "provider_specific_attributes": ["personal_code"] }
      ]
    },
    "webhook_config": {
      "url": "https://hooks.example.com/hopae",
      "enabled": true,
      "events": ["verification.completed", "verification.failed"],
      "retry_attempts": 3,
      "timeout_seconds": 10
    }
  }' \
  "https://sandbox.api.hopae.com/connect/v1/apps/abc123"
{
  "client_id": "abc123",
  "client_secret": "sh_app_...",
  "name": "New App Name",
  "branding": { "name": "New Brand", "logo": "iVBORw0KGgoAAAANSUhEUgAA..." },
  "redirect_uris": ["https://app.example.com/callback", "https://app.example.com/alt"],
  "verification": {
    "request_attributes": ["name", "birthdate"],
    "providers": [
      { "provider_id": "smartid", "enabled": true, "provider_specific_attributes": ["personal_code"] }
    ]
  },
  "webhook_config": {
    "url": "https://hooks.example.com/hopae",
    "enabled": true,
    "events": [
      "verification.initiated",
      "verification.completed",
      "verification.expired",
      "verification.cancelled",
      "verification.failed",
      "verification.awaiting_user_action"
    ],
    "retry_attempts": 3,
    "timeout_seconds": 10
  },
  "created_at": 1731465600
}
Partially updates an app. Only provided fields are changed; immutable fields are rejected.

Request

Authorization
string
required
Bearer <API_KEY> from Console > Developers > Workspace API Keys.
Content-Type
string
application/json

Path parameters

client_id
string
required
Client identifier of the app.

Request body

name
string
New display name.
branding
object
Brand details:
{ "name": "New Brand", "logo": "iVBORw0KGgoAAAANSUhEUgAA..." }
redirect_uris
string[]
Full replacement list of allowed redirect URIs.
verification
object
Verification settings:
{
  "request_attributes": ["name", "birthdate"],
  "providers": [
    { "provider_id": "smartid", "enabled": true, "provider_specific_attributes": ["personal_code"] }
  ]
}
webhook_config
object
Webhook configuration:
{
  "url": "https://hooks.example.com/hopae",
  "enabled": true,
  "events": ["verification.completed", "verification.failed"],
  "retry_attempts": 3,
  "timeout_seconds": 10
}

Response

Returns the updated App object.
curl -X PATCH \
  -H "Authorization: Bearer sk_workspace_test_..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "New App Name",
    "branding": { "name": "New Brand", "logo": "iVBORw0KGgoAAAANSUhEUgAA..." },
    "redirect_uris": ["https://app.example.com/callback", "https://app.example.com/alt"],
    "verification": {
      "request_attributes": ["name", "birthdate"],
      "providers": [
        { "provider_id": "smartid", "enabled": true, "provider_specific_attributes": ["personal_code"] }
      ]
    },
    "webhook_config": {
      "url": "https://hooks.example.com/hopae",
      "enabled": true,
      "events": ["verification.completed", "verification.failed"],
      "retry_attempts": 3,
      "timeout_seconds": 10
    }
  }' \
  "https://sandbox.api.hopae.com/connect/v1/apps/abc123"
{
  "client_id": "abc123",
  "client_secret": "sh_app_...",
  "name": "New App Name",
  "branding": { "name": "New Brand", "logo": "iVBORw0KGgoAAAANSUhEUgAA..." },
  "redirect_uris": ["https://app.example.com/callback", "https://app.example.com/alt"],
  "verification": {
    "request_attributes": ["name", "birthdate"],
    "providers": [
      { "provider_id": "smartid", "enabled": true, "provider_specific_attributes": ["personal_code"] }
    ]
  },
  "webhook_config": {
    "url": "https://hooks.example.com/hopae",
    "enabled": true,
    "events": [
      "verification.initiated",
      "verification.completed",
      "verification.expired",
      "verification.cancelled",
      "verification.failed",
      "verification.awaiting_user_action"
    ],
    "retry_attempts": 3,
    "timeout_seconds": 10
  },
  "created_at": 1731465600
}
Immutable fields: id, client_id, and client_secret. Attempts to modify them return a 400 ValidationError.