naftiko: 1.0.0-alpha2 info: label: Okta API — Authenticator description: 'Okta API — Authenticator. 6 operations. Lead operation: Okta Lists all available Authenticators. Self-contained Naftiko capability covering one Okta business surface.' tags: - Okta - Authenticator created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: OKTA_API_KEY: OKTA_API_KEY capability: consumes: - type: http namespace: okta-authenticator baseUri: https://your-subdomain.okta.com description: Okta API — Authenticator business capability. Self-contained, no shared references. resources: - name: api-v1-authenticators path: /api/v1/authenticators operations: - name: listauthenticators method: GET description: Okta Lists all available Authenticators outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createauthenticator method: POST description: Okta Create an Authenticator outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: activate in: query type: boolean - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-authenticators-authenticatorId path: /api/v1/authenticators/{authenticatorId} operations: - name: getauthenticator method: GET description: Success outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: authenticatorId in: path type: string required: true - name: updateauthenticator method: PUT description: Okta Update Authenticator outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: authenticatorId in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: api-v1-authenticators-authenticatorId-lifecycle-activate path: /api/v1/authenticators/{authenticatorId}/lifecycle/activate operations: - name: activateauthenticator method: POST description: Success outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: authenticatorId in: path type: string required: true - name: api-v1-authenticators-authenticatorId-lifecycle-deactivate path: /api/v1/authenticators/{authenticatorId}/lifecycle/deactivate operations: - name: deactivateauthenticator method: POST description: Success outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: authenticatorId in: path type: string required: true authentication: type: apikey key: Authorization value: '{{env.OKTA_API_KEY}}' placement: header exposes: - type: rest namespace: okta-authenticator-rest port: 8080 description: REST adapter for Okta API — Authenticator. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v1/authenticators name: api-v1-authenticators description: REST surface for api-v1-authenticators. operations: - method: GET name: listauthenticators description: Okta Lists all available Authenticators call: okta-authenticator.listauthenticators outputParameters: - type: object mapping: $. - method: POST name: createauthenticator description: Okta Create an Authenticator call: okta-authenticator.createauthenticator with: activate: rest.activate body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/authenticators/{authenticatorid} name: api-v1-authenticators-authenticatorid description: REST surface for api-v1-authenticators-authenticatorId. operations: - method: GET name: getauthenticator description: Success call: okta-authenticator.getauthenticator with: authenticatorId: rest.authenticatorId outputParameters: - type: object mapping: $. - method: PUT name: updateauthenticator description: Okta Update Authenticator call: okta-authenticator.updateauthenticator with: authenticatorId: rest.authenticatorId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/authenticators/{authenticatorid}/lifecycle/activate name: api-v1-authenticators-authenticatorid-lifecycle-activate description: REST surface for api-v1-authenticators-authenticatorId-lifecycle-activate. operations: - method: POST name: activateauthenticator description: Success call: okta-authenticator.activateauthenticator with: authenticatorId: rest.authenticatorId outputParameters: - type: object mapping: $. - path: /v1/api/v1/authenticators/{authenticatorid}/lifecycle/deactivate name: api-v1-authenticators-authenticatorid-lifecycle-deactivate description: REST surface for api-v1-authenticators-authenticatorId-lifecycle-deactivate. operations: - method: POST name: deactivateauthenticator description: Success call: okta-authenticator.deactivateauthenticator with: authenticatorId: rest.authenticatorId outputParameters: - type: object mapping: $. - type: mcp namespace: okta-authenticator-mcp port: 9090 transport: http description: MCP adapter for Okta API — Authenticator. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: okta-lists-all-available-authenticators description: Okta Lists all available Authenticators hints: readOnly: true destructive: false idempotent: true call: okta-authenticator.listauthenticators outputParameters: - type: object mapping: $. - name: okta-create-authenticator description: Okta Create an Authenticator hints: readOnly: false destructive: false idempotent: false call: okta-authenticator.createauthenticator with: activate: tools.activate body: tools.body outputParameters: - type: object mapping: $. - name: success description: Success hints: readOnly: true destructive: false idempotent: true call: okta-authenticator.getauthenticator with: authenticatorId: tools.authenticatorId outputParameters: - type: object mapping: $. - name: okta-update-authenticator description: Okta Update Authenticator hints: readOnly: false destructive: false idempotent: true call: okta-authenticator.updateauthenticator with: authenticatorId: tools.authenticatorId body: tools.body outputParameters: - type: object mapping: $. - name: success-2 description: Success hints: readOnly: false destructive: false idempotent: false call: okta-authenticator.activateauthenticator with: authenticatorId: tools.authenticatorId outputParameters: - type: object mapping: $. - name: success-3 description: Success hints: readOnly: false destructive: false idempotent: false call: okta-authenticator.deactivateauthenticator with: authenticatorId: tools.authenticatorId outputParameters: - type: object mapping: $.