naftiko: 1.0.0-alpha2 info: label: Phrase Strings API Reference — Job Locales description: 'Phrase Strings API Reference — Job Locales. 8 operations. Lead operation: List job target locales. Self-contained Naftiko capability covering one Phrase business surface.' tags: - Phrase - Job Locales created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: PHRASE_API_KEY: PHRASE_API_KEY capability: consumes: - type: http namespace: strings-job-locales baseUri: https://api.phrase.com/v2 description: Phrase Strings API Reference — Job Locales business capability. Self-contained, no shared references. resources: - name: projects-project_id-jobs-job_id-locales path: /projects/{project_id}/jobs/{job_id}/locales operations: - name: joblocaleslist method: GET description: List job target locales outputRawFormat: json outputParameters: - name: result type: object value: $. - name: joblocalescreate method: POST description: Add a target locale to a job outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: projects-project_id-jobs-job_id-locales-id path: /projects/{project_id}/jobs/{job_id}/locales/{id} operations: - name: joblocaleshow method: GET description: Show single job target locale outputRawFormat: json outputParameters: - name: result type: object value: $. - name: joblocaleupdate method: PATCH description: Update a job target locale outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: joblocaledelete method: DELETE description: Remove a target locale from a job outputRawFormat: json outputParameters: - name: result type: object value: $. - name: projects-project_id-jobs-job_id-locales-id-complete path: /projects/{project_id}/jobs/{job_id}/locales/{id}/complete operations: - name: joblocalecomplete method: POST description: Complete a job locale outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: projects-project_id-jobs-job_id-locales-id-complete_review path: /projects/{project_id}/jobs/{job_id}/locales/{id}/complete_review operations: - name: joblocalecompletereview method: POST description: Review a job locale outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: projects-project_id-jobs-job_id-locales-id-reopen path: /projects/{project_id}/jobs/{job_id}/locales/{id}/reopen operations: - name: joblocalereopen method: POST description: Reopen a job locale outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: apikey key: Authorization value: '{{env.PHRASE_API_KEY}}' placement: header exposes: - type: rest namespace: strings-job-locales-rest port: 8080 description: REST adapter for Phrase Strings API Reference — Job Locales. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/projects/{project-id}/jobs/{job-id}/locales name: projects-project-id-jobs-job-id-locales description: REST surface for projects-project_id-jobs-job_id-locales. operations: - method: GET name: joblocaleslist description: List job target locales call: strings-job-locales.joblocaleslist outputParameters: - type: object mapping: $. - method: POST name: joblocalescreate description: Add a target locale to a job call: strings-job-locales.joblocalescreate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{id} name: projects-project-id-jobs-job-id-locales-id description: REST surface for projects-project_id-jobs-job_id-locales-id. operations: - method: GET name: joblocaleshow description: Show single job target locale call: strings-job-locales.joblocaleshow outputParameters: - type: object mapping: $. - method: PATCH name: joblocaleupdate description: Update a job target locale call: strings-job-locales.joblocaleupdate with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: joblocaledelete description: Remove a target locale from a job call: strings-job-locales.joblocaledelete outputParameters: - type: object mapping: $. - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{id}/complete name: projects-project-id-jobs-job-id-locales-id-complete description: REST surface for projects-project_id-jobs-job_id-locales-id-complete. operations: - method: POST name: joblocalecomplete description: Complete a job locale call: strings-job-locales.joblocalecomplete with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{id}/complete-review name: projects-project-id-jobs-job-id-locales-id-complete-review description: REST surface for projects-project_id-jobs-job_id-locales-id-complete_review. operations: - method: POST name: joblocalecompletereview description: Review a job locale call: strings-job-locales.joblocalecompletereview with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{id}/reopen name: projects-project-id-jobs-job-id-locales-id-reopen description: REST surface for projects-project_id-jobs-job_id-locales-id-reopen. operations: - method: POST name: joblocalereopen description: Reopen a job locale call: strings-job-locales.joblocalereopen with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: strings-job-locales-mcp port: 9090 transport: http description: MCP adapter for Phrase Strings API Reference — Job Locales. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-job-target-locales description: List job target locales hints: readOnly: true destructive: false idempotent: true call: strings-job-locales.joblocaleslist outputParameters: - type: object mapping: $. - name: add-target-locale-job description: Add a target locale to a job hints: readOnly: true destructive: false idempotent: false call: strings-job-locales.joblocalescreate with: body: tools.body outputParameters: - type: object mapping: $. - name: show-single-job-target-locale description: Show single job target locale hints: readOnly: true destructive: false idempotent: true call: strings-job-locales.joblocaleshow outputParameters: - type: object mapping: $. - name: update-job-target-locale description: Update a job target locale hints: readOnly: false destructive: false idempotent: true call: strings-job-locales.joblocaleupdate with: body: tools.body outputParameters: - type: object mapping: $. - name: remove-target-locale-job description: Remove a target locale from a job hints: readOnly: false destructive: true idempotent: true call: strings-job-locales.joblocaledelete outputParameters: - type: object mapping: $. - name: complete-job-locale description: Complete a job locale hints: readOnly: false destructive: false idempotent: false call: strings-job-locales.joblocalecomplete with: body: tools.body outputParameters: - type: object mapping: $. - name: review-job-locale description: Review a job locale hints: readOnly: false destructive: false idempotent: false call: strings-job-locales.joblocalecompletereview with: body: tools.body outputParameters: - type: object mapping: $. - name: reopen-job-locale description: Reopen a job locale hints: readOnly: false destructive: false idempotent: false call: strings-job-locales.joblocalereopen with: body: tools.body outputParameters: - type: object mapping: $.