Skip to main content

Revoke and what it means for listings

Ending a connection releases its listings to the agency — they stay online. A later connection picks them up again by external id.

Who can end a connection#

  • The agency, from its portal (Disconnect, or Cancel request while it is still pending).
  • You, from your software, with DELETE /connections/{id}?reason=….
  • Novi Kvadrat staff, from the admin area.
  • The system, when staff revoke your app: every connection of the app is revoked.

Revoking is final (revoked) and safe to repeat.

Disconnect from your side#

http
DELETE /api/partners/v1/connections/9b1d6c2e-4f3a-4c8e-9a71-2d5e8f0b3c44?reason=Agency%20left%20REAA

The body is empty (its Content-Digest is the empty-string digest). The reason, up to 200 characters, travels URL-encoded in the query, which is part of the signed base — see the canonical query. Answer:

json
200 { "connection": { "id": "9b1d6c2e-…", "status": "revoked", … } }

With the reference client:

sh
node nk-partner.mjs disconnect 9b1d6c2e-4f3a-4c8e-9a71-2d5e8f0b3c44 --reason="Agency left REAA"

What happens to the listings#

Ending a connection releases its listings; it never unpublishes them:

  • every listing of the connection stays online with its status and becomes the agency's to edit by hand in its portal;
  • its provenance (your app and its external_id) is kept;
  • staged items not yet imported are skipped;
  • further writes to the connection answer 409 connection_not_active with details.status = "revoked".

Notifications: the webhook connection.status_changed (revoked); an email to your admins when the agency or staff ended it; an email to the agency when anyone but the agency ended it.

Reconnecting#

If the same agency connects the same app again later, your next pushes pick up the released listings by external_id: the worker finds the agency's listing with the same provenance and updates it instead of creating a twin — even one the agency archived meanwhile. No duplicates.

Last updated