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

# Update Subscription

> Update a trigger subscription's configuration on behalf of your user.



## OpenAPI

````yaml /actionkit/triggers/openapi.json PATCH /projects/{project_id}/trigger-subscriptions/{subscription_id}
openapi: 3.0.0
info:
  title: Triggers API
  version: 1.0.0
servers:
  - url: https://actionkit.useparagon.com
    description: US Cloud
security: []
paths:
  /projects/{project_id}/trigger-subscriptions/{subscription_id}:
    patch:
      summary: Update Trigger Subscription
      description: >-
        Update a trigger subscription by ID, for changing the parameters or
        webhook override URL.


        All keys are optional: any keys not provided will not be changed.
        Parameters are shallow-merged with the patch payload:

        - Omitted keys are unchanged

        - Provided keys overwrite

        - Null removes keys

        - Arrays replace in full, not merge
      operationId: updateTriggerSubscription
      parameters:
        - $ref: '#/components/parameters/ProjectId'
        - $ref: '#/components/parameters/SubscriptionId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                parameters:
                  type: object
                  description: >-
                    The trigger configuration parameters to update. Omitted keys
                    unchanged, provided keys overwrite, null removes keys.
                  additionalProperties: true
                webhookOverride:
                  description: Update or clear (with null) the webhook override
                  nullable: true
                  allOf:
                    - $ref: '#/components/schemas/WebhookOverride'
              example:
                parameters:
                  objectType: Opportunity
                  filterFormula: null
                webhookOverride: null
      responses:
        '200':
          description: Success - Returns the updated trigger subscription
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TriggerSubscription'
              example:
                id: <uuid>
                type: SALESFORCE_TRIGGER_RECORD_CREATED
                parameters:
                  objectType: Opportunity
                status: ACTIVE
                dateCreated: '2025-05-31T00:00:00Z'
                dateLastReceivedEvent: '2025-05-31T00:00:00Z'
                credentialId: <uuid>
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: >-
                  `type` cannot be updated in a trigger subscription. Instead,
                  unsubscribe from this trigger and create a new subscription
                  with the desired `type`.
                status: 400
      security:
        - BearerAuth: []
components:
  parameters:
    ProjectId:
      name: project_id
      in: path
      required: true
      schema:
        type: string
        description: Your Paragon Project ID
    SubscriptionId:
      name: subscription_id
      in: path
      required: true
      schema:
        type: string
        format: uuid
        description: The trigger subscription ID
  schemas:
    WebhookOverride:
      type: object
      properties:
        url:
          type: string
          format: uri
          description: The webhook URL to receive trigger events
          example: https://example.com
        headers:
          type: object
          description: HTTP headers (case-insensitive) to pass with each webhook request
          additionalProperties:
            type: string
        metadata:
          type: object
          description: >-
            JSON object to include with webhook payload. This will be passed in
            the `triggerSubscriptionMetadata` field of incoming webhook events.
          additionalProperties: true
      required:
        - url
    TriggerSubscription:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: The subscription ID
          example: <uuid>
        type:
          type: string
          description: The trigger type
          example: SALESFORCE_TRIGGER_RECORD_CREATED
        parameters:
          type: object
          description: The trigger configuration parameters
          additionalProperties: true
          example:
            recordType: Opportunity
        status:
          type: string
          enum:
            - ACTIVE
            - ERRORED
          description: >-
            ACTIVE: currently receiving events. ERRORED: errors checking for
            records or repeated webhook delivery issues resulted in the trigger
            being disabled.
        error:
          type: string
          description: The reason for an error (only present when status is ERRORED)
          example: >-
            Failed to check for new records after repeated failures. Last error:
            Request failed with 500 { ... error info ... }
        dateCreated:
          type: string
          format: date-time
          description: The date the subscription was created
          example: '2025-05-31T00:00:00Z'
        dateLastReceivedEvent:
          type: string
          format: date-time
          description: >-
            For polling triggers: date we last checked for new records. For
            webhook triggers: date we last received a webhook event.
          example: '2025-05-31T00:00:00Z'
        credentialId:
          type: string
          format: uuid
          description: The credential ID associated with this subscription
          example: <uuid>
        webhookOverride:
          $ref: '#/components/schemas/WebhookOverride'
          description: Undefined if no webhook override is set for this subscription
      required:
        - id
        - type
        - parameters
        - status
        - dateCreated
        - dateLastReceivedEvent
        - credentialId
    Error:
      type: object
      properties:
        message:
          type: string
          description: Error message
        code:
          type: string
          description: Error code
        status:
          type: integer
          description: HTTP status code
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Your [Paragon User
        Token](/getting-started/installing-the-connect-sdk#setup) (JWT), which
        you can generate using your project's signing keys.

````