> ## Documentation Index
> Fetch the complete documentation index at: https://x-preview-mintlify-143107c1.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Batch Compliance

> Usa los endpoints de Batch Compliance de X API v2 para subir conjuntos de datos de Post ID o user ID y recuperar el estado actual de cumplimiento por eliminaciones, suspensiones y ediciones.

export const Button = ({href, children}) => {
  return <div className="not-prose">
    <a href={href}>
      <button className="x-btn">
        <span>{children}</span>
        <svg width="3" height="24" viewBox="0 -9 3 24" class="h-6 rotate-0 overflow-visible"><path d="M0 0L3 3L0 6" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg>
      </button>
    </a>
  </div>;
};

Los endpoints de Batch Compliance te permiten subir conjuntos de datos de Post IDs o user IDs y recibir su estado actual de cumplimiento. Úsalos para identificar Posts eliminados, cuentas suspendidas y otros eventos de compliance.

## Descripción general

<CardGroup cols={2}>
  <Card title="Compliance de Posts" icon="https://mintcdn.com/x-preview-mintlify-143107c1/-vUZNvNnsedeyKnT/icons/xds/icon-chat.svg?fit=max&auto=format&n=-vUZNvNnsedeyKnT&q=85&s=65931703120a2ba61763b171daa57b14" width="24" height="24" data-path="icons/xds/icon-chat.svg">
    Verifica el estado de Posts en masa
  </Card>

  <Card title="Compliance de usuarios" icon="https://mintcdn.com/x-preview-mintlify-143107c1/ze5k6TCY1Wgf7gM4/icons/xds/icon-person.svg?fit=max&auto=format&n=ze5k6TCY1Wgf7gM4&q=85&s=25f7e785a10942c64553e92ded5ada2d" width="24" height="24" data-path="icons/xds/icon-person.svg">
    Verifica el estado de usuarios en masa
  </Card>

  <Card title="Asincrónico" icon="clock">
    Envía jobs y recupera los resultados más tarde
  </Card>

  <Card title="Grandes conjuntos de datos" icon="database">
    Procesa millones de IDs
  </Card>
</CardGroup>

***

## Cómo funciona

1. **Crea un job** — Especifica el tipo (Posts o usuarios) y la URL de subida
2. **Sube los IDs** — Sube tu conjunto de datos a la URL proporcionada
3. **Espera el procesamiento** — El job se procesa de forma asincrónica
4. **Descarga los resultados** — Obtén el estado de compliance para cada ID

***

## Endpoints

| Método | Endpoint                                                               | Descripción                   |
| :----- | :--------------------------------------------------------------------- | :---------------------------- |
| POST   | [`/2/compliance/jobs`](/x-api/compliance/create-compliance-job)        | Crear un nuevo compliance job |
| GET    | [`/2/compliance/jobs/:id`](/x-api/compliance/get-compliance-job-by-id) | Obtener el estado del job     |
| GET    | [`/2/compliance/jobs`](/x-api/compliance/get-compliance-jobs)          | Listar todos los jobs         |

***

## Tipos de job

| Tipo     | Descripción                                   |
| :------- | :-------------------------------------------- |
| `tweets` | Verificar el estado de compliance de Posts    |
| `users`  | Verificar el estado de compliance de usuarios |

***

## Eventos de compliance

### Eventos de Post

| Evento      | Descripción                                 |
| :---------- | :------------------------------------------ |
| `deleted`   | El Post fue eliminado por el usuario        |
| `bounced`   | El Post falló la verificación de compliance |
| `protected` | La cuenta se volvió protegida               |
| `suspended` | La cuenta fue suspendida                    |
| `scrub_geo` | Se eliminaron los datos de geolocalización  |

### Eventos de usuario

| Evento        | Descripción                   |
| :------------ | :---------------------------- |
| `deleted`     | La cuenta fue eliminada       |
| `suspended`   | La cuenta fue suspendida      |
| `protected`   | La cuenta se volvió protegida |
| `deactivated` | La cuenta fue desactivada     |

***

## Ejemplo: Crear un job

```bash theme={null}
curl -X POST "https://api.x.com/2/compliance/jobs" \
  -H "Authorization: Bearer $BEARER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "tweets",
    "name": "my-compliance-job"
  }'
```

***

## Primeros pasos

<Note>
  **Requisitos previos**

  * Una [cuenta de desarrollador](https://developer.x.com/en/portal/petition/essential/basic-info) aprobada
  * Un [Project y App](/resources/fundamentals/developer-apps) en el Developer Console
  * El [Bearer Token](/resources/fundamentals/authentication) de tu App
</Note>

<CardGroup cols={2}>
  <Card title="Inicio rápido" icon="https://mintcdn.com/x-preview-mintlify-143107c1/LjDupcgIJeQhUrTV/icons/xds/icon-rocket.svg?fit=max&auto=format&n=LjDupcgIJeQhUrTV&q=85&s=ab9d87f67ff2827df976c782467c9fe1" href="/x-api/compliance/batch-compliance/quickstart" width="24" height="24" data-path="icons/xds/icon-rocket.svg">
    Crea tu primer compliance job
  </Card>

  <Card title="Guía de integración" icon="https://mintcdn.com/x-preview-mintlify-143107c1/r6g1kiGndqT3mXyl/icons/xds/icon-book.svg?fit=max&auto=format&n=r6g1kiGndqT3mXyl&q=85&s=221001d25934bdf1f9d20077f943b9c8" href="/x-api/compliance/batch-compliance/integrate" width="24" height="24" data-path="icons/xds/icon-book.svg">
    Conceptos clave y buenas prácticas
  </Card>

  <Card title="Referencia de la API" icon="https://mintcdn.com/x-preview-mintlify-143107c1/-vUZNvNnsedeyKnT/icons/xds/icon-code.svg?fit=max&auto=format&n=-vUZNvNnsedeyKnT&q=85&s=1df744166b46c62535ed328bca70d1c0" href="/x-api/compliance/create-compliance-job" width="24" height="24" data-path="icons/xds/icon-code.svg">
    Documentación completa del endpoint
  </Card>
</CardGroup>
