IndyKite Capture - delete relationship properties
This skill builds the request body for the Capture API's batch relationship-property delete endpoint - removing named properties from relationships in the IndyKite Knowledge Graph (IKG) while keeping the relationships themselves:
POST <API_URL>/capture/v1/relationships/properties/delete
Each entry identifies one relationship (source, target, type) and lists the property_types to strip from it. The JSON file is the deliverable, ready to be POSTed by any application.
The MCP server does not currently expose Capture endpoints; the JSON bodies this skill produces are for direct REST use and remain valid if Capture tools are added later.
When to use
Activate this skill when the user wants to:
- remove properties from an edge - e.g. drop a stale
statusor timestamp from anOWNSrelationship - while keeping the connection; - strip the same property set from many relationships in one call.
Do not activate this skill to:
- delete the relationship itself - use
indykite-capture-delete-relationships; - remove node properties - use
indykite-capture-delete-node-properties; - overwrite a property with a new value - re-upsert the relationship with
indykite-capture-upsert-relationships; - delete through a CIQ policy + Knowledge Query - use
indykite-ciq-delete.
Prerequisites
- An IndyKite project with an AppAgent whose credentials are configured for the calling application (Credentials guide).
- For each target: the relationship's
sourceandtarget(type,external_id) pairs, itstype, and the exact property names to remove.
Steps
1. List the relationships and the properties to strip
| Field | Required | Meaning |
|---|---|---|
source |
yes | { "external_id": …, "type": … } of the outgoing node. |
target |
yes | { "external_id": …, "type": … } of the incoming node. |
type |
yes | The relationship type (max 128 chars). |
property_types |
yes | 1-250 property names to delete from this relationship. |
2. Assemble the request body
One JSON object: { "relationships": [ … ] }, 1-250 entries per request. On a composite IKG, add top-level "use_global_db": true to target relationships stored in the global constituent (Data Residency guide); omit it on a regular IKG. A ready example: assets/delete-relationship-properties.json.
{
"relationships": [
{
"source": { "external_id": "millicent", "type": "Person" },
"target": { "external_id": "kitt", "type": "Car" },
"type": "OWNS",
"property_types": ["status"]
}
]
}
This file is the deliverable - any HTTP-capable application can send it.
3. Send it (optional)
The endpoint authenticates the calling application (its AppAgent credentials). Which credential goes in which request header is covered by the Credentials guide.
A runnable shell helper builds the authenticated request: scripts/capture.sh — run with --print to preview the curl (host-pinned; token redacted). Deletion is destructive: preview with --print, and confirm the property list, before sending.
4. Read the results
A 200 returns one result per entry, in order: { "results": [ { "id": "gid:…" } ] }. Field shapes and error semantics: references/capture-reference.md.
Outcome
- A valid
{ "relationships": [ … ] }body exists, each entry identifying a relationship and itsproperty_typesto remove. - If sent, the listed properties are gone from those relationships; the relationships and their endpoint nodes are untouched.
Files in this skill
references/capture-reference.md- field reference,use_global_dbbehavior, batch limits, and error semantics.assets/delete-relationship-properties.json- ready request body strippingstatusfrom anOWNSedge.scripts/capture.sh- Bash helper that POSTs a body file to/capture/v1/relationships/properties/delete(host-pinned;--printto preview).
Agent-specific notes
This skill uses generic markdown instructions and works across all agents listed in the README. The agent needs to be able to write a JSON file; sending it additionally requires HTTP access (curl or any HTTP client).
References
- Capture API reference (OpenAPI)
- Data Residency guide -
use_global_dbon composite IKGs - Credentials guide