Phrase · Capability

Phrase Strings API Reference — Job Annotations

Phrase Strings API Reference — Job Annotations. 6 operations. Lead operation: List job annotations. Self-contained Naftiko capability covering one Phrase business surface.

Run with Naftiko PhraseJob Annotations

What You Can Do

GET
Jobannotationslist — List job annotations
/v1/projects/{project-id}/jobs/{job-id}/annotations
PATCH
Jobannotationupdate — Create/Update a job annotation
/v1/projects/{project-id}/jobs/{job-id}/annotations/{id}
DELETE
Jobannotationdelete — Delete a job annotation
/v1/projects/{project-id}/jobs/{job-id}/annotations/{id}
GET
Joblocaleannotationslist — List job locale annotations
/v1/projects/{project-id}/jobs/{job-id}/locales/{job-locale-id}/annotations
PATCH
Joblocaleannotationupdate — Create/Update a job locale annotation
/v1/projects/{project-id}/jobs/{job-id}/locales/{job-locale-id}/annotations/{id}
DELETE
Joblocaleannotationdelete — Delete a job locale annotation
/v1/projects/{project-id}/jobs/{job-id}/locales/{job-locale-id}/annotations/{id}

MCP Tools

list-job-annotations

List job annotations

read-only idempotent
create-update-job-annotation

Create/Update a job annotation

idempotent
delete-job-annotation

Delete a job annotation

idempotent
list-job-locale-annotations

List job locale annotations

read-only idempotent
create-update-job-locale-annotation

Create/Update a job locale annotation

idempotent
delete-job-locale-annotation

Delete a job locale annotation

idempotent

Capability Spec

strings-job-annotations.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Phrase Strings API Reference — Job Annotations
  description: 'Phrase Strings API Reference — Job Annotations. 6 operations. Lead operation: List job annotations. Self-contained
    Naftiko capability covering one Phrase business surface.'
  tags:
  - Phrase
  - Job Annotations
  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-annotations
    baseUri: https://api.phrase.com/v2
    description: Phrase Strings API Reference — Job Annotations business capability. Self-contained, no shared references.
    resources:
    - name: projects-project_id-jobs-job_id-annotations
      path: /projects/{project_id}/jobs/{job_id}/annotations
      operations:
      - name: jobannotationslist
        method: GET
        description: List job annotations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: projects-project_id-jobs-job_id-annotations-id
      path: /projects/{project_id}/jobs/{job_id}/annotations/{id}
      operations:
      - name: jobannotationupdate
        method: PATCH
        description: Create/Update a job annotation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Name of the annotation to set or update.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: jobannotationdelete
        method: DELETE
        description: Delete a job annotation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Name of the annotation to delete.
          required: true
    - name: projects-project_id-jobs-job_id-locales-job_locale_id-annotations
      path: /projects/{project_id}/jobs/{job_id}/locales/{job_locale_id}/annotations
      operations:
      - name: joblocaleannotationslist
        method: GET
        description: List job locale annotations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: projects-project_id-jobs-job_id-locales-job_locale_id-annotations-id
      path: /projects/{project_id}/jobs/{job_id}/locales/{job_locale_id}/annotations/{id}
      operations:
      - name: joblocaleannotationupdate
        method: PATCH
        description: Create/Update a job locale annotation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Name of the annotation to set or update.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: joblocaleannotationdelete
        method: DELETE
        description: Delete a job locale annotation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: Name of the annotation to delete.
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.PHRASE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: strings-job-annotations-rest
    port: 8080
    description: REST adapter for Phrase Strings API Reference — Job Annotations. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/projects/{project-id}/jobs/{job-id}/annotations
      name: projects-project-id-jobs-job-id-annotations
      description: REST surface for projects-project_id-jobs-job_id-annotations.
      operations:
      - method: GET
        name: jobannotationslist
        description: List job annotations
        call: strings-job-annotations.jobannotationslist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/projects/{project-id}/jobs/{job-id}/annotations/{id}
      name: projects-project-id-jobs-job-id-annotations-id
      description: REST surface for projects-project_id-jobs-job_id-annotations-id.
      operations:
      - method: PATCH
        name: jobannotationupdate
        description: Create/Update a job annotation
        call: strings-job-annotations.jobannotationupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: jobannotationdelete
        description: Delete a job annotation
        call: strings-job-annotations.jobannotationdelete
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{job-locale-id}/annotations
      name: projects-project-id-jobs-job-id-locales-job-locale-id-annotations
      description: REST surface for projects-project_id-jobs-job_id-locales-job_locale_id-annotations.
      operations:
      - method: GET
        name: joblocaleannotationslist
        description: List job locale annotations
        call: strings-job-annotations.joblocaleannotationslist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/projects/{project-id}/jobs/{job-id}/locales/{job-locale-id}/annotations/{id}
      name: projects-project-id-jobs-job-id-locales-job-locale-id-annotations-id
      description: REST surface for projects-project_id-jobs-job_id-locales-job_locale_id-annotations-id.
      operations:
      - method: PATCH
        name: joblocaleannotationupdate
        description: Create/Update a job locale annotation
        call: strings-job-annotations.joblocaleannotationupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: joblocaleannotationdelete
        description: Delete a job locale annotation
        call: strings-job-annotations.joblocaleannotationdelete
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: strings-job-annotations-mcp
    port: 9090
    transport: http
    description: MCP adapter for Phrase Strings API Reference — Job Annotations. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: list-job-annotations
      description: List job annotations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: strings-job-annotations.jobannotationslist
      outputParameters:
      - type: object
        mapping: $.
    - name: create-update-job-annotation
      description: Create/Update a job annotation
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: strings-job-annotations.jobannotationupdate
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-job-annotation
      description: Delete a job annotation
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: strings-job-annotations.jobannotationdelete
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-job-locale-annotations
      description: List job locale annotations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: strings-job-annotations.joblocaleannotationslist
      outputParameters:
      - type: object
        mapping: $.
    - name: create-update-job-locale-annotation
      description: Create/Update a job locale annotation
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: strings-job-annotations.joblocaleannotationupdate
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-job-locale-annotation
      description: Delete a job locale annotation
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: strings-job-annotations.joblocaleannotationdelete
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.