1. Verifications
Kobble
  • Introduction
  • API Fundamentals
    • Idempotency
    • Rate Limits
    • Healthcheck
      GET
  • Authorization
    • Authorization
    • Get access token
      POST
  • Beneficiaries
    • List all beneficiaries
      GET
    • Get beneficiary by ID
      GET
    • Create beneficiary
      POST
    • Create Payid beneficiary
      POST
    • Update beneficiary
      PATCH
  • Cards
    • Cards API
    • Card Creation Flow — Developer Guide & Onboarding
    • Get all cards
      GET
    • Create a new card
      POST
    • Get card by ID
      GET
    • Update card status
      PATCH
    • Replace or renew card
      POST
    • Generate card secret
      POST
    • Generate MeaWallet widget session token
      POST
  • Card Programs
    • Card Programs API
    • Get all programs
    • Create a new program
    • Get program by ID
  • Clients
    • Clients API
    • Get all clients
    • Get client by ID
    • Create a new client
    • Update client status
  • Endusers
    • Endusers API
    • Usage of Metadata on Endusers
    • Get all endusers
    • Create a new enduser
    • Get enduser by ID
    • Update enduser
    • Create a stakeholder
    • List stakeholders
    • Update stakeholder
  • Transactions
    • Transactions API
    • Get all transactions
    • Create a transaction
    • Get transaction by ID
    • Create manual credit transaction
    • Create manual debit transaction
    • Download the partner's confirmation letter for a `_4` transaction
  • Wallets
    • Wallets API
    • Get all wallets
    • Create a new wallet
    • Get wallet by ID
    • Update wallet
    • Download the partner's confirmation letter for a `_4` wallet
  • Relays
    • Relays API
    • Create subscription
  • Webhooks
    • Webhooks API
    • Webhook Signature Verification
    • Create a webhook
    • Report completed
    • Get all webhooks
    • Delete a webhook
  • Wallet Statements
    • Request a wallet statement
    • List wallet statements
    • Get a wallet statement
    • Get a wallet statement download URL
  • Card Art
    • Get a card art upload URL
    • Register a card art
    • List card arts
    • Get a card art
    • Update a card art
    • Activate a card art
    • Archive a card art
  • Verifications
    • List verifications for a subject
      GET
    • Create a verification
      POST
    • Get verification by ID
      GET
    • Get a verification session (SDK token or hosted link)
      GET
    • Record a client-asserted outcome
      POST
    • Email a KYB party its hosted verification link
      POST
    • Set a KYB party's USD details
      PATCH
    • Project the company's declared owners into KYB parties
      POST
  • Transaction Documents
    • Request a presigned upload for a supporting document
    • List the supporting documents on a transaction
  • Mandates
    • List mandates
    • Create mandate
    • Get mandate by ID
    • Update mandate
  • FX Quotes
    • Request an FX quote
    • Get an FX quote by ID
  • Schemas
    • Schemas
    • CardWidgetSessionTokenResponse
    • 202 Accepted
    • Webhook
    • 201 Created
    • Relay
    • Create Beneficiary with bank details
    • Client
    • Beneficiary
    • Card
    • CardCreateInputDto
    • CardStatusUpdateDto
    • CardRenewReplaceInputDto
    • Program
    • MetadataKobbleDebit1
    • ProgramCreateInputDto
    • Person
    • Company
    • Enduser
    • Enduser Create Person Input
    • Enduser Create Company Input
    • Metadata
    • Enduser Create Input DTO
    • Transaction
    • TransactionCreateManualCreditInputDto
    • TransactionDocumentType
    • TransactionDocumentStatus
    • TransactionDocumentCreateInput
    • WalletUpdateInputDto
    • TransactionDocumentUpload
    • WalletStatement
    • TransactionDocument
    • TransactionCreateInputDto
    • ReportCompletedEntity
    • Mandate
    • Wallet
    • ReportCompletedNotification
    • WalletCreateInputDto
    • CardArt
    • CardArtDetail
    • WebhookNotification
    • CardArtUploadUrlInput
    • CardArtUploadUrlResponse
    • CardArtCreateInput
    • CardArtPatchInput
    • Error
    • RelayCreateResponse
    • ScreeningSummary
    • VerificationPartyLink
    • Verification
    • VerificationSessionToken
    • Address
    • Stakeholder
    • StakeholderCreateInput
    • StakeholderUpdateInput
    • VerificationPartyInviteResult
    • FxQuoteCreateInputDto
    • FxQuote
  1. Verifications

Project the company's declared owners into KYB parties

POST
/customers/v1/verifications/{companyId}/parties/declared
Optional (on request). Applies only if this feature is enabled for your client.
For a KOBBLE_KYB_2 company whose owners the verification partner cannot discover from a registry (for example a UAE company), declare them yourself and have Kobble verify each one. Declare the owners as stakeholders on the enduser company (POST /customers/v1/endusers/{id}/stakeholders, or nested at enduser creation) with at least one of the roles DIRECTOR, UBO or SHAREHOLDER, then call this endpoint. Each ACTIVE such stakeholder becomes a type: KYC / subject_type: EXTERNAL_PARTY party verification linked to the company with source CUSTOMER and source_ref = the stakeholder id, appears in the company's links_from[], gates the KYB aggregate like a partner-discovered party, and can be given its hosted link with GET /customers/v1/verifications/{party_id}/session-token or emailed it with POST /customers/v1/verifications/{companyId}/parties/{partyId}/invite.
Idempotent by stakeholder: calling again adds parties for newly declared stakeholders, leaves existing ones untouched, and cancels and unlinks the party of a withdrawn stakeholder as long as nobody has started it (a started one is kept). A no-op when the company already has partner-discovered (PARTNER) parties, and closed (REJECTED / CANCELLED) companies gain no parties. Should the partner later deliver registry owners for a company with declared owners, both sets are kept and the company is flagged reason_code DECLARED_OWNERS_REVIEW for a Kobble officer, without a status change.
Returns the company's refreshed links_from[]. Requires the client/write scope. Owner-scoped.

Request

Path Params

Header Params

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/customers/v1/verifications//parties/declared' \
--header 'x-client-id;'

Responses

🟢200OK
application/json
The company's refreshed links_from[].
Bodyapplication/json

Example
{
    "party_id": "c3d4e5f6-a7b8-4c9d-8e0f-1a2b3c4d5e6f",
    "roles": [
        "DIRECTOR",
        "UBO"
    ],
    "ownership_percent": "51",
    "required": true,
    "display_name": "Fatima Al Mansoori",
    "invited_email": null,
    "invited_at": null,
    "invite_count": 0,
    "source": "CUSTOMER",
    "source_ref": "9f8e7d6c-5b4a-4c3d-8e2f-1a0b9c8d7e6f",
    "party": {
        "id": "c3d4e5f6-a7b8-4c9d-8e0f-1a2b3c4d5e6f",
        "type": "KYC",
        "status": "NOT_STARTED"
    }
}
🟠400Bad Request
🟠401Unauthorized
🟠403Forbidden
🟠404Record Not Found
Modified at 2026-11-13 07:19:25
Previous
Set a KYB party's USD details
Next
Request a presigned upload for a supporting document
Built with