naftiko: 1.0.0-alpha2 info: label: Unleash Admin API — Strategies description: 'Unleash Admin API — Strategies. 10 operations. Lead operation: Get Strategies That Use a Context Field. Self-contained Naftiko capability covering one Unleash business surface.' tags: - Unleash - Strategies created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: UNLEASH_API_KEY: UNLEASH_API_KEY capability: consumes: - type: http namespace: admin-strategies baseUri: https://app.unleash-instance.example.com description: Unleash Admin API — Strategies business capability. Self-contained, no shared references. resources: - name: api-admin-context-contextField-strategies path: /api/admin/context/{contextField}/strategies operations: - name: getstrategiesbycontextfield method: GET description: Get Strategies That Use a Context Field outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: contextField in: path type: string required: true - name: api-admin-projects-projectId-context-contextField-strategies path: /api/admin/projects/{projectId}/context/{contextField}/strategies operations: - name: getstrategiesbycontextfieldforproject method: GET description: Get Strategies That Use a Context Field outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: projectId in: path type: string required: true - name: contextField in: path type: string required: true - name: api-admin-segments-strategies path: /api/admin/segments/strategies operations: - name: updatefeaturestrategysegments method: POST description: Update Strategy Segments outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-admin-strategies path: /api/admin/strategies operations: - name: getallstrategies method: GET description: Get All Strategies outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createstrategy method: POST description: Create a Strategy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-admin-strategies-name path: /api/admin/strategies/{name} operations: - name: getstrategy method: GET description: Get a Strategy Definition outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string required: true - name: removestrategy method: DELETE description: Delete a Strategy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string required: true - name: updatestrategy method: PUT description: Update a Strategy Type outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: name in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-admin-strategies-strategyName-deprecate path: /api/admin/strategies/{strategyName}/deprecate operations: - name: deprecatestrategy method: POST description: Deprecate a Strategy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: strategyName in: path type: string required: true - name: api-admin-strategies-strategyName-reactivate path: /api/admin/strategies/{strategyName}/reactivate operations: - name: reactivatestrategy method: POST description: Reactivate a Strategy outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: strategyName in: path type: string required: true authentication: type: bearer token: '{{env.UNLEASH_API_KEY}}' exposes: - type: rest namespace: admin-strategies-rest port: 8080 description: REST adapter for Unleash Admin API — Strategies. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/admin/context/{contextfield}/strategies name: api-admin-context-contextfield-strategies description: REST surface for api-admin-context-contextField-strategies. operations: - method: GET name: getstrategiesbycontextfield description: Get Strategies That Use a Context Field call: admin-strategies.getstrategiesbycontextfield with: contextField: rest.contextField outputParameters: - type: object mapping: $. - path: /v1/api/admin/projects/{projectid}/context/{contextfield}/strategies name: api-admin-projects-projectid-context-contextfield-strategies description: REST surface for api-admin-projects-projectId-context-contextField-strategies. operations: - method: GET name: getstrategiesbycontextfieldforproject description: Get Strategies That Use a Context Field call: admin-strategies.getstrategiesbycontextfieldforproject with: projectId: rest.projectId contextField: rest.contextField outputParameters: - type: object mapping: $. - path: /v1/api/admin/segments/strategies name: api-admin-segments-strategies description: REST surface for api-admin-segments-strategies. operations: - method: POST name: updatefeaturestrategysegments description: Update Strategy Segments call: admin-strategies.updatefeaturestrategysegments with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/admin/strategies name: api-admin-strategies description: REST surface for api-admin-strategies. operations: - method: GET name: getallstrategies description: Get All Strategies call: admin-strategies.getallstrategies outputParameters: - type: object mapping: $. - method: POST name: createstrategy description: Create a Strategy call: admin-strategies.createstrategy with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/admin/strategies/{name} name: api-admin-strategies-name description: REST surface for api-admin-strategies-name. operations: - method: GET name: getstrategy description: Get a Strategy Definition call: admin-strategies.getstrategy with: name: rest.name outputParameters: - type: object mapping: $. - method: DELETE name: removestrategy description: Delete a Strategy call: admin-strategies.removestrategy with: name: rest.name outputParameters: - type: object mapping: $. - method: PUT name: updatestrategy description: Update a Strategy Type call: admin-strategies.updatestrategy with: name: rest.name body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/admin/strategies/{strategyname}/deprecate name: api-admin-strategies-strategyname-deprecate description: REST surface for api-admin-strategies-strategyName-deprecate. operations: - method: POST name: deprecatestrategy description: Deprecate a Strategy call: admin-strategies.deprecatestrategy with: strategyName: rest.strategyName outputParameters: - type: object mapping: $. - path: /v1/api/admin/strategies/{strategyname}/reactivate name: api-admin-strategies-strategyname-reactivate description: REST surface for api-admin-strategies-strategyName-reactivate. operations: - method: POST name: reactivatestrategy description: Reactivate a Strategy call: admin-strategies.reactivatestrategy with: strategyName: rest.strategyName outputParameters: - type: object mapping: $. - type: mcp namespace: admin-strategies-mcp port: 9090 transport: http description: MCP adapter for Unleash Admin API — Strategies. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-strategies-that-use-context description: Get Strategies That Use a Context Field hints: readOnly: true destructive: false idempotent: true call: admin-strategies.getstrategiesbycontextfield with: contextField: tools.contextField outputParameters: - type: object mapping: $. - name: get-strategies-that-use-context-2 description: Get Strategies That Use a Context Field hints: readOnly: true destructive: false idempotent: true call: admin-strategies.getstrategiesbycontextfieldforproject with: projectId: tools.projectId contextField: tools.contextField outputParameters: - type: object mapping: $. - name: update-strategy-segments description: Update Strategy Segments hints: readOnly: false destructive: false idempotent: false call: admin-strategies.updatefeaturestrategysegments with: body: tools.body outputParameters: - type: object mapping: $. - name: get-all-strategies description: Get All Strategies hints: readOnly: true destructive: false idempotent: true call: admin-strategies.getallstrategies outputParameters: - type: object mapping: $. - name: create-strategy description: Create a Strategy hints: readOnly: false destructive: false idempotent: false call: admin-strategies.createstrategy with: body: tools.body outputParameters: - type: object mapping: $. - name: get-strategy-definition description: Get a Strategy Definition hints: readOnly: true destructive: false idempotent: true call: admin-strategies.getstrategy with: name: tools.name outputParameters: - type: object mapping: $. - name: delete-strategy description: Delete a Strategy hints: readOnly: false destructive: true idempotent: true call: admin-strategies.removestrategy with: name: tools.name outputParameters: - type: object mapping: $. - name: update-strategy-type description: Update a Strategy Type hints: readOnly: false destructive: false idempotent: true call: admin-strategies.updatestrategy with: name: tools.name body: tools.body outputParameters: - type: object mapping: $. - name: deprecate-strategy description: Deprecate a Strategy hints: readOnly: false destructive: false idempotent: false call: admin-strategies.deprecatestrategy with: strategyName: tools.strategyName outputParameters: - type: object mapping: $. - name: reactivate-strategy description: Reactivate a Strategy hints: readOnly: false destructive: false idempotent: false call: admin-strategies.reactivatestrategy with: strategyName: tools.strategyName outputParameters: - type: object mapping: $.