naftiko: 1.0.0-alpha2 info: label: Together APIs — RL description: 'Together APIs — RL. 15 operations. Lead operation: Download checkpoint. Self-contained Naftiko capability covering one Together Ai business surface.' tags: - Together Ai - RL created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TOGETHER_AI_API_KEY: TOGETHER_AI_API_KEY capability: consumes: - type: http namespace: together-ai-rl baseUri: https://api.together.ai/v1 description: Together APIs — RL business capability. Self-contained, no shared references. resources: - name: rl-checkpoints-id-download path: /rl/checkpoints/{id}/download operations: - name: downloadcheckpoint method: GET description: Download checkpoint outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: variant in: query type: string required: true - name: rl-training-sessions path: /rl/training-sessions operations: - name: listtrainingsessions method: GET description: List training sessions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: status in: query type: string - name: limit in: query type: integer - name: after in: query type: string - name: starttrainingsession method: POST description: Create training session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: rl-training-sessions-session_id path: /rl/training-sessions/{session_id} operations: - name: gettrainingsession method: GET description: Get training session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-forward-backward path: /rl/training-sessions/{session_id}/operations/forward-backward operations: - name: forwardbackward method: POST description: Forward-backward pass outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: rl-training-sessions-session_id-operations-forward-backward-operation_id path: /rl/training-sessions/{session_id}/operations/forward-backward/{operation_id} operations: - name: getforwardbackwardoperation method: GET description: Get forward-backward operation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: operation_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-inference-checkpoint path: /rl/training-sessions/{session_id}/operations/inference-checkpoint operations: - name: createinferencecheckpoint method: POST description: Create inference checkpoint outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-inference-checkpoint-operation_id path: /rl/training-sessions/{session_id}/operations/inference-checkpoint/{operation_id} operations: - name: getinferencecheckpointoperation method: GET description: Get inference checkpoint operation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: operation_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-optim-step path: /rl/training-sessions/{session_id}/operations/optim-step operations: - name: optimstep method: POST description: Optimizer step outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: rl-training-sessions-session_id-operations-optim-step-operation_id path: /rl/training-sessions/{session_id}/operations/optim-step/{operation_id} operations: - name: getoptimstepoperation method: GET description: Get optim-step operation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: operation_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-sample path: /rl/training-sessions/{session_id}/operations/sample operations: - name: sample method: POST description: Sample outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true - name: rl-training-sessions-session_id-operations-sample-operation_id path: /rl/training-sessions/{session_id}/operations/sample/{operation_id} operations: - name: getsample method: GET description: Get sample operation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: operation_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-training-checkpoint path: /rl/training-sessions/{session_id}/operations/training-checkpoint operations: - name: createtrainingcheckpoint method: POST description: Save training checkpoint outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: rl-training-sessions-session_id-operations-training-checkpoint-operation_id path: /rl/training-sessions/{session_id}/operations/training-checkpoint/{operation_id} operations: - name: gettrainingcheckpointoperation method: GET description: Get save training checkpoint operation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true - name: operation_id in: path type: string required: true - name: rl-training-sessions-session_id-stop path: /rl/training-sessions/{session_id}/stop operations: - name: stoptrainingsession method: POST description: Stop training session outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: session_id in: path type: string required: true authentication: type: bearer token: '{{env.TOGETHER_AI_API_KEY}}' exposes: - type: rest namespace: together-ai-rl-rest port: 8080 description: REST adapter for Together APIs — RL. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/rl/checkpoints/{id}/download name: rl-checkpoints-id-download description: REST surface for rl-checkpoints-id-download. operations: - method: GET name: downloadcheckpoint description: Download checkpoint call: together-ai-rl.downloadcheckpoint with: id: rest.id variant: rest.variant outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions name: rl-training-sessions description: REST surface for rl-training-sessions. operations: - method: GET name: listtrainingsessions description: List training sessions call: together-ai-rl.listtrainingsessions with: status: rest.status limit: rest.limit after: rest.after outputParameters: - type: object mapping: $. - method: POST name: starttrainingsession description: Create training session call: together-ai-rl.starttrainingsession with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id} name: rl-training-sessions-session-id description: REST surface for rl-training-sessions-session_id. operations: - method: GET name: gettrainingsession description: Get training session call: together-ai-rl.gettrainingsession with: session_id: rest.session_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/forward-backward name: rl-training-sessions-session-id-operations-forward-backward description: REST surface for rl-training-sessions-session_id-operations-forward-backward. operations: - method: POST name: forwardbackward description: Forward-backward pass call: together-ai-rl.forwardbackward with: session_id: rest.session_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/forward-backward/{operation-id} name: rl-training-sessions-session-id-operations-forward-backward-operation-id description: REST surface for rl-training-sessions-session_id-operations-forward-backward-operation_id. operations: - method: GET name: getforwardbackwardoperation description: Get forward-backward operation call: together-ai-rl.getforwardbackwardoperation with: session_id: rest.session_id operation_id: rest.operation_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/inference-checkpoint name: rl-training-sessions-session-id-operations-inference-checkpoint description: REST surface for rl-training-sessions-session_id-operations-inference-checkpoint. operations: - method: POST name: createinferencecheckpoint description: Create inference checkpoint call: together-ai-rl.createinferencecheckpoint with: session_id: rest.session_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/inference-checkpoint/{operation-id} name: rl-training-sessions-session-id-operations-inference-checkpoint-operation-id description: REST surface for rl-training-sessions-session_id-operations-inference-checkpoint-operation_id. operations: - method: GET name: getinferencecheckpointoperation description: Get inference checkpoint operation call: together-ai-rl.getinferencecheckpointoperation with: session_id: rest.session_id operation_id: rest.operation_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/optim-step name: rl-training-sessions-session-id-operations-optim-step description: REST surface for rl-training-sessions-session_id-operations-optim-step. operations: - method: POST name: optimstep description: Optimizer step call: together-ai-rl.optimstep with: session_id: rest.session_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/optim-step/{operation-id} name: rl-training-sessions-session-id-operations-optim-step-operation-id description: REST surface for rl-training-sessions-session_id-operations-optim-step-operation_id. operations: - method: GET name: getoptimstepoperation description: Get optim-step operation call: together-ai-rl.getoptimstepoperation with: session_id: rest.session_id operation_id: rest.operation_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/sample name: rl-training-sessions-session-id-operations-sample description: REST surface for rl-training-sessions-session_id-operations-sample. operations: - method: POST name: sample description: Sample call: together-ai-rl.sample with: session_id: rest.session_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/sample/{operation-id} name: rl-training-sessions-session-id-operations-sample-operation-id description: REST surface for rl-training-sessions-session_id-operations-sample-operation_id. operations: - method: GET name: getsample description: Get sample operation call: together-ai-rl.getsample with: session_id: rest.session_id operation_id: rest.operation_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/training-checkpoint name: rl-training-sessions-session-id-operations-training-checkpoint description: REST surface for rl-training-sessions-session_id-operations-training-checkpoint. operations: - method: POST name: createtrainingcheckpoint description: Save training checkpoint call: together-ai-rl.createtrainingcheckpoint with: session_id: rest.session_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/operations/training-checkpoint/{operation-id} name: rl-training-sessions-session-id-operations-training-checkpoint-operation-id description: REST surface for rl-training-sessions-session_id-operations-training-checkpoint-operation_id. operations: - method: GET name: gettrainingcheckpointoperation description: Get save training checkpoint operation call: together-ai-rl.gettrainingcheckpointoperation with: session_id: rest.session_id operation_id: rest.operation_id outputParameters: - type: object mapping: $. - path: /v1/rl/training-sessions/{session-id}/stop name: rl-training-sessions-session-id-stop description: REST surface for rl-training-sessions-session_id-stop. operations: - method: POST name: stoptrainingsession description: Stop training session call: together-ai-rl.stoptrainingsession with: session_id: rest.session_id outputParameters: - type: object mapping: $. - type: mcp namespace: together-ai-rl-mcp port: 9090 transport: http description: MCP adapter for Together APIs — RL. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: download-checkpoint description: Download checkpoint hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.downloadcheckpoint with: id: tools.id variant: tools.variant outputParameters: - type: object mapping: $. - name: list-training-sessions description: List training sessions hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.listtrainingsessions with: status: tools.status limit: tools.limit after: tools.after outputParameters: - type: object mapping: $. - name: create-training-session description: Create training session hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.starttrainingsession with: body: tools.body outputParameters: - type: object mapping: $. - name: get-training-session description: Get training session hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.gettrainingsession with: session_id: tools.session_id outputParameters: - type: object mapping: $. - name: forward-backward-pass description: Forward-backward pass hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.forwardbackward with: session_id: tools.session_id body: tools.body outputParameters: - type: object mapping: $. - name: get-forward-backward-operation description: Get forward-backward operation hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.getforwardbackwardoperation with: session_id: tools.session_id operation_id: tools.operation_id outputParameters: - type: object mapping: $. - name: create-inference-checkpoint description: Create inference checkpoint hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.createinferencecheckpoint with: session_id: tools.session_id outputParameters: - type: object mapping: $. - name: get-inference-checkpoint-operation description: Get inference checkpoint operation hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.getinferencecheckpointoperation with: session_id: tools.session_id operation_id: tools.operation_id outputParameters: - type: object mapping: $. - name: optimizer-step description: Optimizer step hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.optimstep with: session_id: tools.session_id body: tools.body outputParameters: - type: object mapping: $. - name: get-optim-step-operation description: Get optim-step operation hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.getoptimstepoperation with: session_id: tools.session_id operation_id: tools.operation_id outputParameters: - type: object mapping: $. - name: sample description: Sample hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.sample with: session_id: tools.session_id body: tools.body outputParameters: - type: object mapping: $. - name: get-sample-operation description: Get sample operation hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.getsample with: session_id: tools.session_id operation_id: tools.operation_id outputParameters: - type: object mapping: $. - name: save-training-checkpoint description: Save training checkpoint hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.createtrainingcheckpoint with: session_id: tools.session_id outputParameters: - type: object mapping: $. - name: get-save-training-checkpoint-operation description: Get save training checkpoint operation hints: readOnly: true destructive: false idempotent: true call: together-ai-rl.gettrainingcheckpointoperation with: session_id: tools.session_id operation_id: tools.operation_id outputParameters: - type: object mapping: $. - name: stop-training-session description: Stop training session hints: readOnly: false destructive: false idempotent: false call: together-ai-rl.stoptrainingsession with: session_id: tools.session_id outputParameters: - type: object mapping: $.