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

# Verificar cliente enrolado

> Indica si un cliente está enrolado en tu empresa: si lo estuvo alguna vez, si lo está ahora, si está pausado y, cuando corresponde, desde cuándo dejó de estar activo. Solo acepta RUT chileno.



## OpenAPI

````yaml openapi/clients.yaml GET /datahub/isEnrolled/{identifier}
openapi: 3.1.0
info:
  title: API de clientes de Pruff
  version: '1'
  description: >-
    Endpoints que tus sistemas llaman para leer y operar los datos de tu empresa
    en Pruff. Todas las solicitudes van por HTTPS y se autentican con el header
    `x-api-key`. Las convenciones de formato, paginación y errores se describen
    en https://docs.pruff.com/api/introduccion.
servers:
  - url: https://api.pruff.com/api/clients
security:
  - ApiKeyAuth: []
tags:
  - name: Facturas
    description: Consulta de facturas electrónicas, facturas transables y cesiones.
  - name: Documentos
    description: Consulta y creación de documentos asociados a tus clientes.
  - name: Archivos
    description: Carga de archivos a operaciones y a los requerimientos de tus documentos.
  - name: Financiamiento
    description: >-
      Simula créditos, crea solicitudes de factoring y consulta las prórrogas de
      tu empresa.
  - name: Comité
    description: >-
      Consulta las aprobaciones de una solicitud en los comités de riesgo y de
      operaciones, y registra nuevas firmas.
  - name: Chat
    description: Exporta y envía mensajes del chat de una solicitud.
  - name: Reportes
    description: >-
      Reportes de operaciones, cartera, recaudaciones, cuentas pendientes y
      flujos de tu empresa.
  - name: Datahub
    description: >-
      Consulta de la información tributaria, financiera y de riesgo que Pruff
      tiene de tus clientes y deudores.
  - name: Mercado Público
    description: >-
      Licitaciones y órdenes de compra de Mercado Público (ChileCompra) cargadas
      en Pruff.
  - name: CRM
    description: >-
      Datos comerciales de tu CRM en Pruff: empresas con su ficha, pipeline,
      prospectos, gestiones y simulaciones.
  - name: SGR
    description: Operaciones SGR (garantías) de tu empresa.
  - name: Sincronizador
    description: >-
      Pide sincronizar a un cliente con el SII o la TGR para obtener su
      información más actualizada, y consulta el estado de esas
      sincronizaciones.
  - name: Usuarios
    description: >-
      Administra los usuarios de tu empresa en Pruff (crear, editar, eliminar,
      consultar su perfil y asignar subordinados) y consulta las cuentas
      (empresas conectadas) a las que cada usuario tiene acceso.
  - name: Contactos
    description: Crea contactos asociados a las empresas de tu cartera.
paths:
  /datahub/isEnrolled/{identifier}:
    get:
      tags:
        - Datahub
      summary: Verificar cliente enrolado
      description: >-
        Indica si un cliente está enrolado en tu empresa: si lo estuvo alguna
        vez, si lo está ahora, si está pausado y, cuando corresponde, desde
        cuándo dejó de estar activo. Solo acepta RUT chileno.
      operationId: getDatahubEnrollmentStatus
      parameters:
        - name: identifier
          in: path
          required: true
          description: >-
            RUT del cliente, sin puntos y con guion. Debe tener un dígito
            verificador válido.
          schema:
            type: string
            pattern: ^\d{1,8}-[kK\d]$
          example: 11111111-1
      responses:
        '200':
          description: Estado de enrolamiento del cliente.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DatahubEnrollmentStatus'
              examples:
                active:
                  summary: Enrolado y activo
                  value:
                    identifier: 11111111-1
                    hasBeenEnrolled: true
                    active: true
                    paused: false
                    deactivatedAt: null
                inactive:
                  summary: Enrolado, pero ya no está activo
                  value:
                    identifier: 11111111-1
                    hasBeenEnrolled: true
                    active: false
                    paused: false
                    deactivatedAt: '2025-01-17T11:01:15.185Z'
                neverEnrolled:
                  summary: Nunca enrolado
                  value:
                    identifier: 11111111-1
                    hasBeenEnrolled: false
                    active: false
                    paused: false
                    deactivatedAt: null
        '400':
          description: El RUT no es válido.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalidIdentifier:
                  summary: RUT inválido
                  value:
                    message: Invalid identifier
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          description: >-
            Superaste el límite general de la API de clientes: **500 solicitudes
            por minuto por empresa** (todas las API keys de tu empresa suman en
            el mismo contador). El body y el header `Retry-After` indican cuándo
            puedes reintentar.
          headers:
            Retry-After:
              description: Segundos que debes esperar antes de reintentar.
              schema:
                type: integer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DatahubRateLimitError'
              example:
                message: >-
                  Rate limit exceeded: 501 requests in the current 60s window,
                  limit is 500. Retry in 25s.
                displayMessage: >-
                  Superaste el límite de 500 solicitudes cada 60 segundos.
                  Vuelve a intentarlo en 25 segundos.
                data:
                  code: RATE_LIMIT_EXCEEDED
                  scope: All API keys of your company share this budget.
                  limit: 500
                  used: 501
                  windowSeconds: 60
                  retryAfterSeconds: 25
                  resetAt: '2026-03-10T15:00:25.000Z'
                  hint: >-
                    Wait until resetAt (or honor the Retry-After header) before
                    retrying. Avoid repeating identical requests: reuse
                    responses you already fetched, use filters and larger
                    pageSize values instead of one request per item, and cap
                    your client concurrency.
        '500':
          $ref: '#/components/responses/InternalError'
        '504':
          $ref: '#/components/responses/Timeout'
components:
  schemas:
    DatahubEnrollmentStatus:
      type: object
      required:
        - identifier
        - hasBeenEnrolled
        - active
        - paused
        - deactivatedAt
      properties:
        identifier:
          type: string
          description: RUT consultado.
        hasBeenEnrolled:
          type: boolean
          description: Si el cliente estuvo enrolado alguna vez en tu empresa.
        active:
          type: boolean
          description: >-
            Si el cliente está activo en Pruff, es decir, si Pruff obtiene su
            información tributaria. `false` con `deactivatedAt` en `null` justo
            después de enrolar significa que la activación sigue en curso
            (`CLP`) o que el cliente se enroló con otra moneda, que no se activa
            automáticamente. `false` con `deactivatedAt` con fecha significa que
            el enrolamiento dejó de estar vigente, por ejemplo porque la clave
            del SII dejó de ser válida. Para un cliente `CLP`, vuelve a
            enrolarlo con `POST /datahub/enroll` y su clave vigente.
        paused:
          type: boolean
          description: Si el enrolamiento está pausado actualmente.
        deactivatedAt:
          type:
            - string
            - 'null'
          format: date-time
          description: >-
            Cuándo se desenroló (ISO 8601, UTC). Solo viene con valor si
            `active` es `false` y se conoce la fecha; si no, `null`.
    Error:
      type: object
      required:
        - message
      properties:
        message:
          type: string
          description: >-
            Identifica el error. En algunos casos es un texto en inglés con
            valores variables. Para tu lógica, usa el código HTTP y, cuando
            exista, `data.code`.
        displayMessage:
          type: string
          description: >-
            Mensaje pensado para mostrarlo a una persona. Normalmente en
            español; algunos mensajes de validación vienen en inglés.
        data:
          description: Detalle adicional del error, cuando existe.
    DatahubRateLimitError:
      type: object
      required:
        - message
        - displayMessage
        - data
      description: Respuesta cuando superas el límite de solicitudes.
      properties:
        message:
          type: string
          description: Detalle del límite superado, en inglés.
        displayMessage:
          type: string
          description: >-
            Mensaje pensado para mostrarlo a una persona. Normalmente en
            español; algunos mensajes de validación vienen en inglés.
        data:
          type: object
          properties:
            code:
              type: string
              enum:
                - RATE_LIMIT_EXCEEDED
              description: Código estable del error.
            scope:
              type: string
              description: A quién aplica el límite.
            limit:
              type: integer
              description: Máximo de solicitudes permitidas en la ventana.
            used:
              type: integer
              description: Solicitudes contadas en la ventana actual.
            windowSeconds:
              type: integer
              description: Duración de la ventana, en segundos.
            retryAfterSeconds:
              type: integer
              description: Segundos que debes esperar antes de reintentar.
            resetAt:
              type:
                - string
                - 'null'
              format: date-time
              description: >-
                Instante (ISO 8601, UTC) en que se reinicia el contador. Puede
                ser `null`.
            hint:
              type: string
              description: Recomendación para evitar el límite.
  responses:
    Unauthorized:
      description: >-
        Falta el header `x-api-key`, su valor no es válido o la cuenta de API de
        tu empresa no está habilitada.
      content:
        application/json:
          schema:
            type: object
            required:
              - message
            properties:
              message:
                type: string
          example:
            message: 'Unauthorized: Invalid API Key'
    InternalError:
      description: >-
        Error inesperado en Pruff. El texto de `message` puede variar (por
        ejemplo en mayúsculas); no dependas de él.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Internal server error
    Timeout:
      description: >-
        La solicitud superó el tiempo máximo de 55 segundos. La operación puede
        haberse completado igual: antes de reintentar una solicitud que crea o
        modifica datos, verifica su estado.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: request_timeout
            displayMessage: La solicitud excedió el tiempo máximo permitido
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key que Pruff entrega a tu empresa.

````

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