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

# List Active Webhook Subscriptions and Endpoints

> Retrieve all active webhook registrations for your organization. Signing secrets are redacted from all list responses for security.

Returns all active webhook endpoint registrations associated with your enterprise organization. The response includes each webhook's unique identifier, registered target URL, status, and subscribed event types.

Cryptographic signing secrets are **permanently redacted** from list responses. If you need to inspect or replace a secret, use the [Rotate Webhook Secret](/sdks/enterprise-webhooks/rotate-webhook-secret) endpoint to generate and retrieve a new one.

<CodeGroup>
  ```python Python theme={null}
  import requests

  headers = {"X-API-Key": "sk_live_YOUR_API_KEY"}
  response = requests.get(
      "https://live.agribackup.com/api/v1/enterprise/eudr/webhooks",
      headers=headers,
  )
  print(response.json())
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    "https://live.agribackup.com/api/v1/enterprise/eudr/webhooks",
    {
      headers: { "X-API-Key": "sk_live_YOUR_API_KEY" },
    }
  );
  const data = await response.json();
  console.log(data);
  ```

  ```bash cURL theme={null}
  curl -X GET https://live.agribackup.com/api/v1/enterprise/eudr/webhooks \
    -H "X-API-Key: sk_live_YOUR_API_KEY"
  ```
</CodeGroup>

## Response Fields

| Field        | Type      | Description                                                      |
| ------------ | --------- | ---------------------------------------------------------------- |
| `webhookId`  | string    | Unique identifier for the webhook registration (e.g. `wh_12345`) |
| `status`     | string    | Registration status — `ACTIVE` for live subscriptions            |
| `targetUrl`  | string    | The registered HTTPS callback URL                                |
| `eventTypes` | string\[] | List of compliance event types this webhook is subscribed to     |


## OpenAPI

````yaml get /api/v1/enterprise/eudr/webhooks
openapi: 3.0.1
info:
  title: AgriBackup Enterprise EUDR API
  description: >-
    # Introduction


    AgriBackup is the cryptographic compliance engine for EU-bound commodity
    imports. Built on Deterministic Logic, Immutable Evidence, and
    High-Throughput Ingestion, our API provides Tier-1 enterprise routing for EU
    Deforestation Regulation (EUDR).


    ## The Integration Vector

    To integrate this Digital Trust Layer into your ERP, you must execute the
    following sequence:

    1. **Authentication:** Generate your `X-API-Key` from the client dashboard.

    2. **Telemetry:** Register your webhook URLs via `POST /webhooks`.

    3. **Ingestion:** Push your GeoJSON polygons via `POST /polygons`.

    4. **Logistics:** Lock the batch to a shipment via `POST /shipments/link`.


    ## Asynchronous Architecture

    Because satellite deforestation screening and Hedera DLT anchoring take
    time, ingestion endpoints return a `202 Accepted`. You must listen for the
    corresponding Webhook to confirm cryptographic execution.


    ## Base URLs

    * **Production:** `https://live.agribackup.com`

    * **Sandbox:** `https://sandbox.agribackup.com`
  contact:
    name: AgriBackup Architecture Team
    url: https://agribackup.com
    email: contact@agribackup.com
  license:
    name: Proprietary
    url: https://agribackup.com/terms
  version: v1.0
servers:
  - url: https://live.agribackup.com
    description: Production (Mainnet)
  - url: https://sandbox.agribackup.com
    description: Sandbox (Testnet)
security: []
tags:
  - name: Enterprise Risk Management
  - name: Enterprise Clearance Webhooks
    description: Asynchronous status receivers for TRACES NT
  - name: Enterprise Jobs
    description: Query status and metrics of asynchronous compliance jobs
  - name: Enterprise Suppliers
  - name: Enterprise Diagnostics
    description: Monitor API health, consensus ledger, and satellite systems availability
  - name: Enterprise Suppliers
    description: Map internal ERP vendor IDs to EU Operator UUIDs
  - name: Enterprise Webhooks
    description: Register endpoints for asynchronous compliance events
  - name: Enterprise Archival
    description: Endpoints for bulk compliance archiving and auditor extensibility
  - name: Enterprise Logistics
    description: Smart contract linking of batches to logistics shipments
  - name: Enterprise Declarations
    description: DDS generation with legal land tenure proofs
  - name: Enterprise Batches
  - name: Enterprise API Keys
  - name: Enterprise Diagnostics
  - name: Enterprise Logistics
  - name: Enterprise Jobs
  - name: Enterprise Evidence
    description: Cryptographic evidence ledger anchored on Hedera Hashgraph
  - name: Enterprise Declarations
  - name: Enterprise Credentials
  - name: Enterprise Evidence
  - name: Enterprise Risk Management
    description: Pre-assessment of country risk and satellite deforestation probabilities
  - name: Enterprise Batches
    description: Programmatic batch ingestion and management
  - name: Enterprise Polygons
  - name: Introduction
  - name: Enterprise Polygons
    description: Programmatic polygon ingestion and verification
  - name: Enterprise Archival
  - name: Enterprise Credentials
    description: Programmatic ingestion of vault-secured enterprise secrets
  - name: Enterprise API Keys
    description: Endpoints for managing B2B API Keys (Requires standard JWT login)
  - name: Enterprise Webhooks
paths:
  /api/v1/enterprise/eudr/webhooks:
    get:
      tags:
        - Enterprise Webhooks
      summary: List Active Webhook Subscriptions
      description: >-
        Retrieves all active webhook registrations registered for this
        organization. Cryptographic signing secrets are redacted for security.
      operationId: getWebhooks
      responses:
        '200':
          description: List of active webhooks successfully retrieved
          headers:
            X-RateLimit-Limit:
              description: >-
                The maximum number of requests you're permitted to make per
                hour.
              schema:
                type: integer
                format: int32
            X-RateLimit-Remaining:
              description: >-
                The number of requests remaining in the current rate limit
                window.
              schema:
                type: integer
                format: int32
            X-RateLimit-Reset:
              description: >-
                The time at which the current rate limit window resets in UTC
                epoch seconds.
              schema:
                type: integer
                format: int32
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebhookSubscriptionResponse'
        '401':
          description: Unauthorized
          headers:
            X-RateLimit-Limit:
              description: >-
                The maximum number of requests you're permitted to make per
                hour.
              schema:
                type: integer
                format: int32
            X-RateLimit-Remaining:
              description: >-
                The number of requests remaining in the current rate limit
                window.
              schema:
                type: integer
                format: int32
            X-RateLimit-Reset:
              description: >-
                The time at which the current rate limit window resets in UTC
                epoch seconds.
              schema:
                type: integer
                format: int32
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
        '403':
          description: Forbidden
          headers:
            X-RateLimit-Limit:
              description: >-
                The maximum number of requests you're permitted to make per
                hour.
              schema:
                type: integer
                format: int32
            X-RateLimit-Remaining:
              description: >-
                The number of requests remaining in the current rate limit
                window.
              schema:
                type: integer
                format: int32
            X-RateLimit-Reset:
              description: >-
                The time at which the current rate limit window resets in UTC
                epoch seconds.
              schema:
                type: integer
                format: int32
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: Python
          source: >-
            import agribackup

            from agribackup.rest import ApiException


            # Initialize Client

            configuration =
            agribackup.Configuration(host="https://live.agribackup.com/api/v1")

            configuration.api_key['ApiKeyAuth'] = 'sk_live_YOUR_API_KEY'


            with agribackup.ApiClient(configuration) as api_client:
                try:
                    api_instance = agribackup.EnterpriseWebhooksApi(api_client)
                    response = api_instance.get_webhooks()
                    print(response)
                except ApiException as e:
                    print("Exception when calling API: %s\n" % e)
        - lang: Node.js
          source: |-
            import { AgriBackupClient } from '@agribackup/sdk';

            // Initialize Client
            const client = new AgriBackupClient({
              apiKey: 'sk_live_YOUR_API_KEY',
              baseUrl: 'https://live.agribackup.com/api/v1'
            });

            async function execute() {
              try {
                const response = await client.webhooks.getWebhooks();
                console.log(response);
              } catch (error) {
                console.error(error);
              }
            }
        - lang: Java
          source: |-
            import com.agribackup.client.*;
            import com.agribackup.client.api.*;
            import com.agribackup.client.model.*;

            public class Example {
                public static void main(String[] args) {
                    ApiClient defaultClient = Configuration.getDefaultApiClient();
                    defaultClient.setBasePath("https://live.agribackup.com/api/v1");
                    defaultClient.setApiKey("sk_live_YOUR_API_KEY");

                    EnterpriseWebhooksApi apiInstance = new EnterpriseWebhooksApi(defaultClient);
                    try {
                        Object result = apiInstance.getWebhooks();
                        System.out.println(result);
                    } catch (ApiException e) {
                        System.err.println("Exception when calling API: " + e.getResponseBody());
                    }
                }
            }
        - lang: C#
          source: |-
            using System;
            using System.Threading.Tasks;
            using AgriBackup.SDK.Api;
            using AgriBackup.SDK.Client;
            using AgriBackup.SDK.Model;

            class Program {
                static async Task Main() {
                    Configuration config = new Configuration();
                    config.BasePath = "https://live.agribackup.com/api/v1";
                    config.AddApiKey("ApiKeyAuth", "sk_live_YOUR_API_KEY");

                    var apiInstance = new EnterpriseWebhooksApi(config);
                    try {
                        var result = await apiInstance.GetWebhooksAsync();
                        Console.WriteLine(result);
                    } catch (ApiException e) {
                        Console.WriteLine("Exception when calling API: " + e.Message);
                    }
                }
            }
components:
  schemas:
    WebhookSubscriptionResponse:
      required:
        - eventTypes
        - status
        - targetUrl
        - webhookId
      type: object
      properties:
        webhookId:
          type: string
          description: The unique identifier of the webhook registration
          example: wh_12345
        status:
          type: string
          description: Status of registration
          example: ACTIVE
        targetUrl:
          type: string
          description: The registered callback target URL
          example: https://erp.example.com/agribackup-webhooks
        eventTypes:
          type: array
          description: Event types subscribed to
          items:
            type: string
            description: Event types subscribed to
      description: >-
        Response containing webhook subscription details (signing secret
        redacted)
    ApiError:
      required:
        - code
        - details
        - message
      type: object
      properties:
        code:
          type: string
          description: Error code
          example: VALIDATION_FAILED
        message:
          type: string
          description: Human-readable error message
          example: Invalid polygon coordinates
        details:
          type: array
          description: Detailed list of validation errors, if applicable
          items:
            $ref: '#/components/schemas/ApiErrorDetail'
      description: Standard error format for all Enterprise API failures
    ApiErrorDetail:
      required:
        - code
        - field
        - issue
      type: object
      properties:
        code:
          type: string
          description: Programmatic error code for automated branch logic
          example: INVALID_COORDINATE_CLOSURE
        field:
          type: string
          description: The field or property that caused the error
          example: features[0].properties.area
        issue:
          type: string
          description: A description of the issue with the field
          example: Area must be specified in hectares and cannot be negative
      description: Detailed error information for a specific field
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      description: Enterprise API Key provided via the AgriBackup developer console.
      name: X-API-Key
      in: header

````