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

# Block an organization customer

> Blocks a customer: revokes the API keys this organization issued to them via white-label onboarding, and refuses to re-issue those until they are unblocked. Their own personal keys, and keys issued by other organizations, are untouched. Note: short-lived credentials minted through the embedded widget/iframe session flow are not org-scoped, so a block neither revokes an outstanding one nor prevents a new one (tracked separately). Idempotent — blocking an already-blocked customer succeeds without re-revoking or re-emitting the activity event. Requires a Nevermined API key, organization admin privileges, and the Enterprise tier.



## OpenAPI

````yaml /api-reference/organizations-openapi.json post /organizations/{orgId}/customers/{customerId}/block
openapi: 3.0.0
info:
  title: Nevermined Organizations API
  description: >-
    Manage a Nevermined organization programmatically — members, tiers, groups &
    budgets, treasury wallets, customers, webhooks, analytics, and
    agent-discovery surfaces.
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.sandbox.nevermined.app/api/v1
    description: Sandbox
  - url: https://api.live.nevermined.app/api/v1
    description: Live
security: []
tags:
  - name: Organizations
    x-group: General
    description: Organization settings, members & roles, and workspace context.
  - name: Organizations - Billing
    x-group: Billing
    description: Tiers, subscriptions, invoices, checkout, and the public tier catalog.
  - name: Groups
    x-group: Groups & Budgets
    description: Organization groups, per-group budgets, and shared payment methods.
  - name: Organizations - Wallets
    x-group: Wallets
    description: Custodial stablecoin treasury wallets.
  - name: Organizations - Customers
    x-group: Customers
    description: The white-label customer CRM (Enterprise).
  - name: Organizations - Analytics
    x-group: Analytics
    description: Revenue, MRR, usage, conversion, and per-member metrics.
  - name: Organizations - Webhooks
    x-group: Webhooks
    description: Outbound webhook subscriptions and deliveries.
  - name: Organizations - Activity
    x-group: Activity
    description: The organization activity feed.
  - name: Organizations - Realtime
    x-group: Realtime
    description: Realtime WebSocket secret management (Enterprise).
  - name: Invitations
    x-group: Invitations
    description: Invite people to an organization.
  - name: Organizations - Integration
    x-group: Agent Discovery
    description: >-
      Public agent-discovery surfaces (llms.txt, agentic-instructions.md,
      ai-catalog.json).
paths:
  /organizations/{orgId}/customers/{customerId}/block:
    post:
      tags:
        - Organizations - Customers
      summary: Block an organization customer
      description: >-
        Blocks a customer: revokes the API keys this organization issued to them
        via white-label onboarding, and refuses to re-issue those until they are
        unblocked. Their own personal keys, and keys issued by other
        organizations, are untouched. Note: short-lived credentials minted
        through the embedded widget/iframe session flow are not org-scoped, so a
        block neither revokes an outstanding one nor prevents a new one (tracked
        separately). Idempotent — blocking an already-blocked customer succeeds
        without re-revoking or re-emitting the activity event. Requires a
        Nevermined API key, organization admin privileges, and the Enterprise
        tier.
      operationId: OrganizationCustomersController_blockCustomer
      parameters:
        - name: orgId
          required: true
          in: path
          description: Organization ID
          schema:
            type: string
            example: org-abc123
        - name: customerId
          required: true
          in: path
          description: Customer record ID
          schema:
            example: oc-7b1c3e9a
            type: string
      responses:
        '200':
          description: Customer blocked
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerResponseDto'
        '401':
          description: Missing or invalid Nevermined API key
        '403':
          description: >-
            Caller is not an organization admin, or the org is not on the
            Enterprise tier
        '404':
          description: Customer not found or does not belong to this org
      security:
        - Authorization: []
components:
  schemas:
    CustomerResponseDto:
      type: object
      properties:
        id:
          type: string
          description: Customer record ID.
          example: oc-7b1c3e9a
        orgId:
          type: string
          description: Organization the customer belongs to.
          example: org-abc123
        userId:
          type: string
          description: Nevermined user ID of the customer.
          example: us-2f4a6c8e
        firstSeenAt:
          type: string
          description: ISO-8601 timestamp the customer was first observed.
          example: '2026-01-15T09:30:00.000Z'
        lastActiveAt:
          type: string
          description: ISO-8601 timestamp of the customer’s most recent activity.
          example: '2026-05-20T14:05:00.000Z'
        totalSpent:
          type: string
          description: >-
            Total amount the customer has spent, serialised as a string
            (bigint).
          example: '125000000'
        createdAt:
          type: string
          description: ISO-8601 timestamp the customer record was created.
          example: '2026-01-15T09:30:00.000Z'
        status:
          description: >-
            Lifecycle status. `blocked` customers hold no valid org-issued
            credential and cannot be issued a new one until unblocked.
          example: active
          allOf:
            - $ref: '#/components/schemas/OrganizationCustomerStatus'
        userName:
          type: string
          description: Display name from the buyer’s user profile, when available.
          example: Aitor Argomaniz
          nullable: true
        userEmail:
          type: string
          description: Email from the buyer’s user profile, when available.
          example: aitor@example.com
          nullable: true
      required:
        - id
        - orgId
        - userId
        - firstSeenAt
        - lastActiveAt
        - totalSpent
        - createdAt
        - status
    OrganizationCustomerStatus:
      type: string
      enum:
        - active
        - blocked
  securitySchemes:
    Authorization:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Unblock an organization customer](/docs/api-reference/organizations--customers/unblock-an-organization-customer.md)
- [Get an organization customer](/docs/api-reference/organizations--customers/get-an-organization-customer.md)
- [List organization customers](/docs/api-reference/organizations--customers/list-organization-customers.md)
- [Export organization customers as CSV](/docs/api-reference/organizations--customers/export-organization-customers-as-csv.md)
- [Provision an account for the organization (member or customer)](/docs/api-reference/organizations/provision-an-account-for-the-organization-member-or-customer.md)
