naftiko: 1.0.0-alpha2 info: label: Sentry Projects API — Projects description: 'Sentry Projects API — Projects. 7 operations. Lead operation: Sentry Retrieve a project. Self-contained Naftiko capability covering one Sentry System business surface.' tags: - Sentry System - Projects created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SENTRY_SYSTEM_API_KEY: SENTRY_SYSTEM_API_KEY capability: consumes: - type: http namespace: sentry-projects-projects baseUri: https://sentry.io/api/0 description: Sentry Projects API — Projects business capability. Self-contained, no shared references. resources: - name: projects-organization_id_or_slug-project_id_or_slug path: /projects/{organization_id_or_slug}/{project_id_or_slug}/ operations: - name: retrieveproject method: GET description: Sentry Retrieve a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateproject method: PUT description: Sentry Update a project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteproject method: DELETE description: Sentry Delete a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: projects-organization_id_or_slug-project_id_or_slug-teams-team_id_or_slug path: /projects/{organization_id_or_slug}/{project_id_or_slug}/teams/{team_id_or_slug}/ operations: - name: addteamtoproject method: POST description: Sentry Add a team to a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: removeteamfromproject method: DELETE description: Sentry Delete a team from a project outputRawFormat: json outputParameters: - name: result type: object value: $. - name: projects-organization_id_or_slug-project_id_or_slug-users path: /projects/{organization_id_or_slug}/{project_id_or_slug}/users/ operations: - name: listprojectusers method: GET description: Sentry List a project's users outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: string description: Filter by user search query. - name: teams-organization_id_or_slug-team_id_or_slug-projects path: /teams/{organization_id_or_slug}/{team_id_or_slug}/projects/ operations: - name: createproject method: POST description: Sentry Create a new project outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.SENTRY_SYSTEM_API_KEY}}' exposes: - type: rest namespace: sentry-projects-projects-rest port: 8080 description: REST adapter for Sentry Projects API — Projects. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/projects/{organization-id-or-slug}/{project-id-or-slug} name: projects-organization-id-or-slug-project-id-or-slug description: REST surface for projects-organization_id_or_slug-project_id_or_slug. operations: - method: GET name: retrieveproject description: Sentry Retrieve a project call: sentry-projects-projects.retrieveproject outputParameters: - type: object mapping: $. - method: PUT name: updateproject description: Sentry Update a project call: sentry-projects-projects.updateproject with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteproject description: Sentry Delete a project call: sentry-projects-projects.deleteproject outputParameters: - type: object mapping: $. - path: /v1/projects/{organization-id-or-slug}/{project-id-or-slug}/teams/{team-id-or-slug} name: projects-organization-id-or-slug-project-id-or-slug-teams-team-id-or-slug description: REST surface for projects-organization_id_or_slug-project_id_or_slug-teams-team_id_or_slug. operations: - method: POST name: addteamtoproject description: Sentry Add a team to a project call: sentry-projects-projects.addteamtoproject outputParameters: - type: object mapping: $. - method: DELETE name: removeteamfromproject description: Sentry Delete a team from a project call: sentry-projects-projects.removeteamfromproject outputParameters: - type: object mapping: $. - path: /v1/projects/{organization-id-or-slug}/{project-id-or-slug}/users name: projects-organization-id-or-slug-project-id-or-slug-users description: REST surface for projects-organization_id_or_slug-project_id_or_slug-users. operations: - method: GET name: listprojectusers description: Sentry List a project's users call: sentry-projects-projects.listprojectusers with: query: rest.query outputParameters: - type: object mapping: $. - path: /v1/teams/{organization-id-or-slug}/{team-id-or-slug}/projects name: teams-organization-id-or-slug-team-id-or-slug-projects description: REST surface for teams-organization_id_or_slug-team_id_or_slug-projects. operations: - method: POST name: createproject description: Sentry Create a new project call: sentry-projects-projects.createproject with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: sentry-projects-projects-mcp port: 9090 transport: http description: MCP adapter for Sentry Projects API — Projects. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: sentry-retrieve-project description: Sentry Retrieve a project hints: readOnly: true destructive: false idempotent: true call: sentry-projects-projects.retrieveproject outputParameters: - type: object mapping: $. - name: sentry-update-project description: Sentry Update a project hints: readOnly: false destructive: false idempotent: true call: sentry-projects-projects.updateproject with: body: tools.body outputParameters: - type: object mapping: $. - name: sentry-delete-project description: Sentry Delete a project hints: readOnly: false destructive: true idempotent: true call: sentry-projects-projects.deleteproject outputParameters: - type: object mapping: $. - name: sentry-add-team-project description: Sentry Add a team to a project hints: readOnly: false destructive: false idempotent: false call: sentry-projects-projects.addteamtoproject outputParameters: - type: object mapping: $. - name: sentry-delete-team-project description: Sentry Delete a team from a project hints: readOnly: false destructive: true idempotent: true call: sentry-projects-projects.removeteamfromproject outputParameters: - type: object mapping: $. - name: sentry-list-project-s-users description: Sentry List a project's users hints: readOnly: true destructive: false idempotent: true call: sentry-projects-projects.listprojectusers with: query: tools.query outputParameters: - type: object mapping: $. - name: sentry-create-new-project description: Sentry Create a new project hints: readOnly: false destructive: false idempotent: false call: sentry-projects-projects.createproject with: body: tools.body outputParameters: - type: object mapping: $.