naftiko: 1.0.0-alpha2 info: label: FactSet IRN Configuration API — Relationships description: 'FactSet IRN Configuration API — Relationships. 10 operations. Lead operation: Factset Edit a Relationship Category. Self-contained Naftiko capability covering one Factset business surface.' tags: - Factset - Relationships created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FACTSET_API_KEY: FACTSET_API_KEY capability: consumes: - type: http namespace: irn-configuration-relationships baseUri: https://api.factset.com/research/irn description: FactSet IRN Configuration API — Relationships business capability. Self-contained, no shared references. resources: - name: v1-relationship-categories-relationshipCategoryId path: /v1/relationship-categories/{relationshipCategoryId} operations: - name: editrelationshipcategory method: PUT description: Factset Edit a Relationship Category outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: relationshipCategoryId in: path type: string description: relationshipCategoryId to update associated record required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deleterelationshipcategory method: DELETE description: Factset Delete a Relationship Category outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: relationshipCategoryId in: path type: string description: relationshipCategoryId to delete associated record required: true - name: v1-relationships path: /v1/relationships operations: - name: getrelationships method: GET description: Factset Get List of the Relationships Configured in Your Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: type in: query type: string - name: createcontactrelationshiptype method: POST description: Factset Create a Relationship Type outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-relationships-relationshipId path: /v1/relationships/{relationshipId} operations: - name: editrelationship method: PUT description: Factset Edit a Relationship Type outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: relationshipId in: path type: string description: relationshipId to update associated record required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deleterelationship method: DELETE description: Factset Delete a Relationship Type outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: relationshipId in: path type: string description: relationshipId to delete associated record required: true - name: v1-symbols-relationships path: /v1/symbols-relationships operations: - name: getsymbolsrelationships method: GET description: Factset Get All the Symbols Relationships outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsymbolrelationshiptype method: POST description: Factset Create a Symbol Relationship outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: v1-symbols-relationships-symbolsRelationshipId path: /v1/symbols-relationships/{symbolsRelationshipId} operations: - name: editsymbolsrelationship method: PUT description: Factset Edit a Symbol Relationship outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: symbolsRelationshipId in: path type: string description: symbolsRelationshipId to update associated record required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deletesymbolsrelationship method: DELETE description: Factset Delete a Symbol Relationship outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: symbolsRelationshipId in: path type: string description: symbolsRelationshipId to delete associated record required: true authentication: type: basic username: '{{env.FACTSET_USER}}' password: '{{env.FACTSET_PASS}}' exposes: - type: rest namespace: irn-configuration-relationships-rest port: 8080 description: REST adapter for FactSet IRN Configuration API — Relationships. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v1/relationship-categories/{relationshipcategoryid} name: v1-relationship-categories-relationshipcategoryid description: REST surface for v1-relationship-categories-relationshipCategoryId. operations: - method: PUT name: editrelationshipcategory description: Factset Edit a Relationship Category call: irn-configuration-relationships.editrelationshipcategory with: relationshipCategoryId: rest.relationshipCategoryId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleterelationshipcategory description: Factset Delete a Relationship Category call: irn-configuration-relationships.deleterelationshipcategory with: relationshipCategoryId: rest.relationshipCategoryId outputParameters: - type: object mapping: $. - path: /v1/v1/relationships name: v1-relationships description: REST surface for v1-relationships. operations: - method: GET name: getrelationships description: Factset Get List of the Relationships Configured in Your Group call: irn-configuration-relationships.getrelationships with: type: rest.type outputParameters: - type: object mapping: $. - method: POST name: createcontactrelationshiptype description: Factset Create a Relationship Type call: irn-configuration-relationships.createcontactrelationshiptype with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/relationships/{relationshipid} name: v1-relationships-relationshipid description: REST surface for v1-relationships-relationshipId. operations: - method: PUT name: editrelationship description: Factset Edit a Relationship Type call: irn-configuration-relationships.editrelationship with: relationshipId: rest.relationshipId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleterelationship description: Factset Delete a Relationship Type call: irn-configuration-relationships.deleterelationship with: relationshipId: rest.relationshipId outputParameters: - type: object mapping: $. - path: /v1/v1/symbols-relationships name: v1-symbols-relationships description: REST surface for v1-symbols-relationships. operations: - method: GET name: getsymbolsrelationships description: Factset Get All the Symbols Relationships call: irn-configuration-relationships.getsymbolsrelationships outputParameters: - type: object mapping: $. - method: POST name: createsymbolrelationshiptype description: Factset Create a Symbol Relationship call: irn-configuration-relationships.createsymbolrelationshiptype with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/symbols-relationships/{symbolsrelationshipid} name: v1-symbols-relationships-symbolsrelationshipid description: REST surface for v1-symbols-relationships-symbolsRelationshipId. operations: - method: PUT name: editsymbolsrelationship description: Factset Edit a Symbol Relationship call: irn-configuration-relationships.editsymbolsrelationship with: symbolsRelationshipId: rest.symbolsRelationshipId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletesymbolsrelationship description: Factset Delete a Symbol Relationship call: irn-configuration-relationships.deletesymbolsrelationship with: symbolsRelationshipId: rest.symbolsRelationshipId outputParameters: - type: object mapping: $. - type: mcp namespace: irn-configuration-relationships-mcp port: 9090 transport: http description: MCP adapter for FactSet IRN Configuration API — Relationships. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: factset-edit-relationship-category description: Factset Edit a Relationship Category hints: readOnly: false destructive: false idempotent: true call: irn-configuration-relationships.editrelationshipcategory with: relationshipCategoryId: tools.relationshipCategoryId body: tools.body outputParameters: - type: object mapping: $. - name: factset-delete-relationship-category description: Factset Delete a Relationship Category hints: readOnly: false destructive: true idempotent: true call: irn-configuration-relationships.deleterelationshipcategory with: relationshipCategoryId: tools.relationshipCategoryId outputParameters: - type: object mapping: $. - name: factset-get-list-relationships-configured description: Factset Get List of the Relationships Configured in Your Group hints: readOnly: true destructive: false idempotent: true call: irn-configuration-relationships.getrelationships with: type: tools.type outputParameters: - type: object mapping: $. - name: factset-create-relationship-type description: Factset Create a Relationship Type hints: readOnly: false destructive: false idempotent: false call: irn-configuration-relationships.createcontactrelationshiptype with: body: tools.body outputParameters: - type: object mapping: $. - name: factset-edit-relationship-type description: Factset Edit a Relationship Type hints: readOnly: false destructive: false idempotent: true call: irn-configuration-relationships.editrelationship with: relationshipId: tools.relationshipId body: tools.body outputParameters: - type: object mapping: $. - name: factset-delete-relationship-type description: Factset Delete a Relationship Type hints: readOnly: false destructive: true idempotent: true call: irn-configuration-relationships.deleterelationship with: relationshipId: tools.relationshipId outputParameters: - type: object mapping: $. - name: factset-get-all-symbols-relationships description: Factset Get All the Symbols Relationships hints: readOnly: true destructive: false idempotent: true call: irn-configuration-relationships.getsymbolsrelationships outputParameters: - type: object mapping: $. - name: factset-create-symbol-relationship description: Factset Create a Symbol Relationship hints: readOnly: false destructive: false idempotent: false call: irn-configuration-relationships.createsymbolrelationshiptype with: body: tools.body outputParameters: - type: object mapping: $. - name: factset-edit-symbol-relationship description: Factset Edit a Symbol Relationship hints: readOnly: false destructive: false idempotent: true call: irn-configuration-relationships.editsymbolsrelationship with: symbolsRelationshipId: tools.symbolsRelationshipId body: tools.body outputParameters: - type: object mapping: $. - name: factset-delete-symbol-relationship description: Factset Delete a Symbol Relationship hints: readOnly: false destructive: true idempotent: true call: irn-configuration-relationships.deletesymbolsrelationship with: symbolsRelationshipId: tools.symbolsRelationshipId outputParameters: - type: object mapping: $.