organisations
Version 0.1.06 operations
Organisations of the current user with role, permissions and scope
GET/organisationsDashboard session
Parameters
No parameters.
Responses
200
idstring (uuid)requirednamestringrequiredlegalNamestringrequiredroleIdstring (uuid)requiredrolestring | nullrequiredroleNamestringrequiredisOwnerbooleanrequiredpermissionsstring[]requiredscopestringrequired- enum: "all", "accounts"
accountIdsstring[]required
Code samples
curl -X GET "$KONNECT_API_URL/organisations" \
-H "Cookie: konnect_session=$KONNECT_SESSION"Example: 200
[
{
"id": "id",
"name": "name",
"legalName": "legalName",
"roleId": "roleId",
"role": "role",
"roleName": "roleName",
"isOwner": true,
"permissions": [
"payments.view"
],
"scope": "all",
"accountIds": [
"string"
]
}
]Identity, status facts and the computed canCollect with its reasons
GET/organisations/{id}Dashboard session
Parameters
idstringpathrequired
Responses
200
idstring (uuid)requirednamestringrequiredlegalNamestringrequiredtaxIdstringrequiredcountrystringrequiredaddressstring | nullrequiredcitystring | nullrequiredpostalCodestring | nullrequiredphonestring | nullrequiredemailstring | nullrequiredwebsitestring | nullrequiredkybStatusstringrequired- enum: "pending", "verified", "refused"
contractSignedAtstring (date-time) | nullrequiredactiveAffiliationsnumberrequiredcanCollectbooleanrequiredComputed: KYB verified, contract signed, one active affiliation
reasonsstring[]requiredpaymentAccountsPaymentAccountSummaryDto[]requiredAccounts within your scope
idstring (uuid)requirednamestringrequiredslugstringrequiredisDefaultbooleanrequiredstatusstringrequired- enum: "active", "paused", "archived"
Code samples
curl -X GET "$KONNECT_API_URL/organisations/id" \
-H "Cookie: konnect_session=$KONNECT_SESSION"Example: 200
{
"id": "id",
"name": "name",
"legalName": "legalName",
"taxId": "taxId",
"country": "country",
"address": "address",
"city": "city",
"postalCode": "postalCode",
"phone": "phone",
"email": "buyer@example.com",
"website": "website",
"kybStatus": "pending",
"contractSignedAt": "2026-10-01T09:30:00.000Z",
"activeAffiliations": 1,
"canCollect": true,
"reasons": [
"kyb_pending"
],
"paymentAccounts": [
{
"id": "id",
"name": "name",
"slug": "slug",
"isDefault": true,
"status": "active"
}
]
}Edit address, phone, email and website (legal identity is read-only)
PATCH/organisations/{id}Dashboard session
Parameters
idstringpathrequired
Request body application/json
addressstring | nullcitystring | nullpostalCodestring | nullphonestring | nullemailstring | nullwebsitestring | null
Responses
200
idstring (uuid)requirednamestringrequiredlegalNamestringrequiredtaxIdstringrequiredcountrystringrequiredaddressstring | nullrequiredcitystring | nullrequiredpostalCodestring | nullrequiredphonestring | nullrequiredemailstring | nullrequiredwebsitestring | nullrequiredkybStatusstringrequired- enum: "pending", "verified", "refused"
contractSignedAtstring (date-time) | nullrequiredactiveAffiliationsnumberrequiredcanCollectbooleanrequiredComputed: KYB verified, contract signed, one active affiliation
reasonsstring[]requiredpaymentAccountsPaymentAccountSummaryDto[]requiredAccounts within your scope
idstring (uuid)requirednamestringrequiredslugstringrequiredisDefaultbooleanrequiredstatusstringrequired- enum: "active", "paused", "archived"
Code samples
curl -X PATCH "$KONNECT_API_URL/organisations/id" \
-H "Cookie: konnect_session=$KONNECT_SESSION" \
-H "Content-Type: application/json" \
-d '{
"address": "address",
"city": "city",
"postalCode": "postalCode",
"phone": "+216 70 000 000",
"email": "buyer@example.com",
"website": "website"
}'Example: request body
{
"address": "address",
"city": "city",
"postalCode": "postalCode",
"phone": "+216 70 000 000",
"email": "buyer@example.com",
"website": "website"
}Example: 200
{
"id": "id",
"name": "name",
"legalName": "legalName",
"taxId": "taxId",
"country": "country",
"address": "address",
"city": "city",
"postalCode": "postalCode",
"phone": "phone",
"email": "buyer@example.com",
"website": "website",
"kybStatus": "pending",
"contractSignedAt": "2026-10-01T09:30:00.000Z",
"activeAffiliations": 1,
"canCollect": true,
"reasons": [
"kyb_pending"
],
"paymentAccounts": [
{
"id": "id",
"name": "name",
"slug": "slug",
"isDefault": true,
"status": "active"
}
]
}Contract status (Documenso signing link: placeholder, always null)
GET/organisations/{id}/contractDashboard session
Parameters
idstringpathrequired
Responses
200
statusstringrequired- enum: "signed", "unsigned"
signedAtstring (date-time) | nullrequiredsigningUrlstring | nullrequiredDocumenso signing link when pending (not wired yet: always null)
Code samples
curl -X GET "$KONNECT_API_URL/organisations/id/contract" \
-H "Cookie: konnect_session=$KONNECT_SESSION"Example: 200
{
"status": "signed",
"signedAt": "2026-10-01T09:30:00.000Z",
"signingUrl": "signingUrl"
}Konnect compliance: mark the KYB verified (audited)
POST/organisations/{id}/kyb/verifyDashboard session
Parameters
idstringpathrequired
Request body application/json
reasonstringrequired
Responses
204
Code samples
curl -X POST "$KONNECT_API_URL/organisations/id/kyb/verify" \
-H "Cookie: konnect_session=$KONNECT_SESSION" \
-H "Content-Type: application/json" \
-d '{
"reason": "Registry extract checked"
}'Example: request body
{
"reason": "Registry extract checked"
}Konnect compliance: refuse the KYB with a reason (audited)
POST/organisations/{id}/kyb/refuseDashboard session
Parameters
idstringpathrequired
Request body application/json
reasonstringrequired
Responses
204
Code samples
curl -X POST "$KONNECT_API_URL/organisations/id/kyb/refuse" \
-H "Cookie: konnect_session=$KONNECT_SESSION" \
-H "Content-Type: application/json" \
-d '{
"reason": "Registry extract checked"
}'Example: request body
{
"reason": "Registry extract checked"
}