---
id: SCR-PFM-MTD-013
title: Relationship types
route: /console/{tenantId}/configuration/platform/relationshipTypes
surface: console
product_area: platform
module: metadata
revision: 1
status: draft
design_intent: confirmed
origin: PLAT-M6 D5 (screen design) with the plan approved 2026-10-21 (PLAT-M6-S02, S12)
implementation_evidence: observed
inference: []
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
purpose: Administrators define the kinds of connections staff can keep between supported records. Each type gives
  names and policy to both directions.
supports:
- JNY-PFM-MTD-004
- CAP-PFM-MTD-017
permission: platform.association-types.read to view; .create, .update and .delete to change
entry_from:
- Configuration home (Platform application)
exits_to:
- SCR-PFM-MTD-018 (the cards that show the new type)
displays:
- field: Each type as a sentence from both sides, its use as an owner, how many and whether dated
  source: listAssociationTypes and listCustomObjects
- field: The record types that can be endpoints
  source: listCustomObjects (active) and the native record types
actions:
- label: New relationship type
  operation_id: createAssociationType
  permission: platform.association-types.create
  confirm: false
- label: Save changes
  operation_id: updateAssociationType
  permission: platform.association-types.update
  confirm: false
- label: Retire or revive
  operation_id: updateAssociationType
  permission: platform.association-types.update
  confirm: true
- label: Remove
  operation_id: deleteAssociationType
  permission: platform.association-types.delete
  confirm: true
states:
- loading
- error
- empty
- read-only
- inactive (retired types)
validation:
- BR-CAP-PFM-MTD-017-01
- BR-CAP-PFM-MTD-017-02
- BR-CAP-PFM-MTD-017-03
- BR-CAP-PFM-MTD-017-04
- BR-CAP-PFM-MTD-017-05
- BR-CAP-PFM-MTD-017-06
- BR-CAP-PFM-MTD-017-10
patterns:
- PageLayout (standard width)
- PageHeader
- ConfigBreadcrumb
- EmptyState
- LoadingIndicatorPanel
- configuration area resource list and form
- remove relationship type dialog
component: components/configuration/resources/relationship-types.tsx
evidence:
- 'react-console at baf6dae3: components/configuration/resources/relationship-types.tsx; components/configuration/relationship-types/relationship-type-fields.tsx,
  remove-relationship-type-dialog.tsx; lib/custom-objects/relationship-types-api.ts, relationships.ts, relationship-config-adapter.ts'
controls: [TC-AVL-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-DAT-001, TC-DAT-003, TC-DAT-004, TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-LOG-002, TC-LOG-003, TC-LOG-004, TC-LOG-005, TC-PI-001, TC-PI-003, TC-PI-005, TC-PRV-001, TC-PRV-002, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-TEN-004, TC-VEN-001, TC-VEN-002, TC-VEN-003]
---

# Relationship types

## What the Screen Is For

Administrators define the kinds of connections staff can keep between supported records. Each type gives names and policy to both directions.

## What It Shows and Lets People Do

The form describes endpoint and shape choices, rejects invalid definitions and excludes cascades into native records. Removing a used type returns deactivation, and owner-selected types remain protected.

## States and Errors

The screen explains service refusals and distinguishes removal from retirement. Standard record users do not receive access to type administration.

## Patterns It Must Respect

The existing configuration list and editor include a dedicated removal dialog and permission-gated actions.
