> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runaether.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Sentry route

> Applies a merge patch to one of the organization's Sentry routes, turning it on or off or setting the agent profile its tasks run with, and returns the route.

Use this tool when you need to:
- Pause or resume a route without deleting it
- Run a route's tasks with an agent profile, or return them to the project's defaults

Examples:
- PATCH /orgs/{orgID}/sentry/routes/{routeID} {"enabled": false}
- PATCH /orgs/{orgID}/sentry/routes/6f1c2a9e-3b7d-4c55-9a2e-0d8b1f4e7c21 {"agent_profile_id": null}

Hints:
- routeID is the route's uuid (listSentryRoutes); the schema answers 422 for one that is not a uuid. The body takes enabled (a boolean) and agent_profile_id (a uuid, or null for the project's defaults); an omitted field is kept, and the schema answers 422 for a null enabled or an unknown field.
- A body naming neither field is refused with 422 before the route is read. A route's Sentry project and Aether project do not change: delete it and create another.
- Returns the SentryRoute as written; Sentry is not called.
- Use deleteSentryRoute instead to remove the route, and listSentryRoutes to find its routeID.
- Org owners and admins only, with a session or a platform API key: a member, viewer or billing member is refused with 403 org_role_insufficient before the path or body is validated, a non-member with 403 org_membership_required, an orgID that is not a uuid with 400, and an agent host's grant with 403 agent_host_route_not_allowed.
- Refused with 404 not_connected when Sentry is not installed, 404 route_not_found for a route the organization's installation does not hold, and 422 agent_profile_not_found for a profile the organization does not hold.



## OpenAPI

````yaml api-reference/openapi.json PATCH /orgs/{orgID}/sentry/routes/{routeID}
openapi: 3.1.0
info:
  title: Aether API
  version: 0.1.0
servers:
  - url: https://api.runaether.dev
security:
  - bearerAuth: []
paths:
  /orgs/{orgID}/sentry/routes/{routeID}:
    patch:
      tags:
        - sentry
      summary: Update Sentry route
      description: >-
        Applies a merge patch to one of the organization's Sentry routes,
        turning it on or off or setting the agent profile its tasks run with,
        and returns the route.


        Use this tool when you need to:

        - Pause or resume a route without deleting it

        - Run a route's tasks with an agent profile, or return them to the
        project's defaults


        Examples:

        - PATCH /orgs/{orgID}/sentry/routes/{routeID} {"enabled": false}

        - PATCH /orgs/{orgID}/sentry/routes/6f1c2a9e-3b7d-4c55-9a2e-0d8b1f4e7c21
        {"agent_profile_id": null}


        Hints:

        - routeID is the route's uuid (listSentryRoutes); the schema answers 422
        for one that is not a uuid. The body takes enabled (a boolean) and
        agent_profile_id (a uuid, or null for the project's defaults); an
        omitted field is kept, and the schema answers 422 for a null enabled or
        an unknown field.

        - A body naming neither field is refused with 422 before the route is
        read. A route's Sentry project and Aether project do not change: delete
        it and create another.

        - Returns the SentryRoute as written; Sentry is not called.

        - Use deleteSentryRoute instead to remove the route, and
        listSentryRoutes to find its routeID.

        - Org owners and admins only, with a session or a platform API key: a
        member, viewer or billing member is refused with 403
        org_role_insufficient before the path or body is validated, a non-member
        with 403 org_membership_required, an orgID that is not a uuid with 400,
        and an agent host's grant with 403 agent_host_route_not_allowed.

        - Refused with 404 not_connected when Sentry is not installed, 404
        route_not_found for a route the organization's installation does not
        hold, and 422 agent_profile_not_found for a profile the organization
        does not hold.
      operationId: updateSentryRoute
      parameters:
        - in: path
          name: orgID
          required: true
          schema:
            format: uuid
            type: string
        - in: path
          name: routeID
          required: true
          schema:
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSentryRouteInput'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryRoute'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrgAuthorizationErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryErrorResponse'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SentryErrorResponse'
          description: Internal Server Error
components:
  schemas:
    UpdateSentryRouteInput:
      additionalProperties: false
      properties:
        agent_profile_id:
          format: uuid
          type:
            - string
            - 'null'
        enabled:
          type: boolean
      type: object
    SentryRoute:
      additionalProperties: false
      properties:
        aether_project_id:
          format: uuid
          type: string
        agent_profile_id:
          description: >-
            The agent profile tasks the route starts run with; null for the
            project's defaults.
          format: uuid
          type:
            - string
            - 'null'
        enabled:
          type: boolean
        route_id:
          format: uuid
          type: string
        sentry_project_id:
          minLength: 1
          type: string
        sentry_project_name:
          minLength: 1
          type: string
        sentry_project_slug:
          minLength: 1
          type: string
      required:
        - route_id
        - aether_project_id
        - enabled
        - agent_profile_id
        - sentry_project_id
        - sentry_project_slug
        - sentry_project_name
      type: object
    SentryErrorResponse:
      additionalProperties: false
      properties:
        code:
          enum:
            - agent_profile_not_found
            - bad_gateway
            - bad_request
            - conflict
            - default_actor_not_member
            - forbidden
            - gateway_timeout
            - gone
            - internal_error
            - method_not_allowed
            - not_acceptable
            - not_connected
            - not_found
            - not_implemented
            - payment_required
            - precondition_failed
            - project_not_found
            - project_repo_required
            - rate_limited
            - reauthorization_required
            - request_canceled
            - request_timeout
            - request_too_large
            - route_exists
            - route_not_found
            - sentry_project_not_found
            - service_unavailable
            - unauthenticated
            - unsupported_media_type
            - validation_failed
          minLength: 1
          type: string
        error:
          minLength: 1
          type: string
        errors:
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type: array
      required:
        - error
        - code
      type: object
    OrgAuthorizationErrorResponse:
      additionalProperties: false
      properties:
        code:
          enum:
            - org_membership_required
            - org_role_insufficient
            - org_suspended
            - account_deleting
            - agent_host_route_not_allowed
            - credential_kind_not_admitted
          type: string
        error:
          minLength: 1
          type: string
      required:
        - error
        - code
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.