Documentatie voor ontwikkelaarsAPI v1

Gidsen

Relaties tussen records

Koppel bedrijven, contacten, deals, projecten en tags met dezelfde relatieregels als in de app.

De andere kant ontdekken

Een relatie heeft de naam van de doelresource. Lees /resources/{resource} en bekijk associations voordat je een relatie maakt. De toegestane resources van de sleutel moeten bron én doel bevatten en de eigenaar moet beide records mogen zien.

De andere kant ontdekken
ResourcesRichtingRelatievelden
companies / contactsBeide richtingenFunctie, vlaggen, datums en notities van het dienstverband.
deals / contactsBeide richtingenrole, is_primary.
projects / dealsBeide richtingenGeen schrijfbare relatievelden.
Bedrijven, contacten, deals, leads, activiteiten, producten → tagsAlleen naar tagsGeen schrijfbare relatievelden; gebruik een tag_ids-filter voor de omgekeerde zoekopdracht.

Lezen, koppelen en ontkoppelen

GET /{resource}/{id}/{association} geeft de relaties. PUT /{resource}/{id}/{association}/{target_id} maakt een relatie of werkt die bij, met een optioneel object relatievelden. Aanmaken geeft 201; een bestaande relatie 200. DELETE op hetzelfde doelpad verwijdert de relatie, heeft geen body en geeft 404 als die niet bestond. PUT en DELETE ondersteunen Idempotency-Key.

Een relatie aanmaken of bijwerken
read -r -p 'Company id: ' COMPANY_ID
read -r -p 'Contact id: ' CONTACT_ID
read -r -p 'Unique link operation key: ' LINK_KEY
curl --fail-with-body --request PUT "$SQUARIO_API_BASE/companies/$COMPANY_ID/contacts/$CONTACT_ID" \
  --header "Authorization: Bearer $SQUARIO_API_KEY" \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $LINK_KEY" \
  --data '{"job_title":"Operations lead","is_primary":true}'
Een relatie lezen en verwijderen
curl --fail-with-body "$SQUARIO_API_BASE/companies/$COMPANY_ID/contacts" \
  --header "Authorization: Bearer $SQUARIO_API_KEY"

read -r -p 'Unique unlink operation key: ' UNLINK_KEY
curl --fail-with-body --request DELETE "$SQUARIO_API_BASE/companies/$COMPANY_ID/contacts/$CONTACT_ID" \
  --header "Authorization: Bearer $SQUARIO_API_KEY" \
  --header "Idempotency-Key: $UNLINK_KEY"

Dienstverbanden hebben eigen regels

Bedrijf/contact-relaties accepteren job_title, department, role_label, role_description, decision_power, buying_role, is_primary, is_decision_maker, is_billing_contact, is_technical_contact, started_at en notes. Zie de referentie voor types en opties.

  • Een nieuwe relatie heeft standaard is_primary: false. Primair maken demoveert het vorige primaire bedrijf van het contact.
  • Weglaten van is_primary op een bestaande relatie behoudt de waarde.
  • DELETE beëindigt het dienstverband met de datum van vandaag en verwijdert de primaire vlag. Beëindigde relaties verdwijnen uit de lijst.
  • De primaire deal van een project ontkoppelen geeft 409; wijzig eerst die primaire relatie in de app.

Elke relatie bevat de twee record-ID’s, toegestane relatievelden en tijdstempels, zonder het eigen ID, de auteur of interne metadata van de koppeltabel. Lijsten bevatten data en meta: { page, page_size, has_more }, oudste eerst en zonder totaaltelling. Relatiepagina’s zijn standaard 100 en accepteren 1–100. Afgeschermde velden zijn null, ook booleaanse vlaggen; booleaanse PUT-velden vereisen nog steeds een boolean.