# INDEX_api_used.md — Llamadas API que el plugin ya hace > Referencia rápida de todas las llamadas API usadas en `public.php`, `Plugin.php` y sus dependencias. > Para bugs o modificaciones en llamadas existentes, este archivo evita leer los archivos de referencia API completos. --- ## API UCRM (CRM v1.0) **Base URL:** `https://{ipserver}/crm/api/v1.0/` **Auth:** Header `X-Auth-App-Key: {apitoken}` (SDK) o `X-Auth-Token: {apitoken}` (Guzzle directo) | Endpoint | Método | Usado en | Parámetros / Body | |---|---|---|---| | `clients` | GET | public.php, PaymentIntentService | `query, limit, offset` | | `clients/{id}` | GET | Plugin.php, Facades, PaymentIntentService | — | | `clients/{id}` | PATCH | AbstractMessageNotifierFacade | `{attributes: [{value, customAttributeId}]}` | | `clients/services` | GET | AbstractMessageNotifierFacade | `?clientId={id}` | | `users/admins` | GET | public.php | — | | `users/admins/{id}` | GET | AbstractMessageNotifierFacade | — | | `payments` | GET | public.php | `clientId, limit, order, direction` | | `payments/{id}` | GET | public.php (resend_payment) | — | | `payments` | POST | AbstractStripeOperationsFacade | `{clientId, amount, currencyCode, methodId, note}` | | `payment-methods` | GET | public.php | — | | `scheduling/jobs` | GET | public.php | `assignedUserId, statuses[], limit` | | `scheduling/jobs/{id}` | GET | public.php (resend_job) | — | | `scheduling/jobs/{id}` | PATCH | Plugin.php, AbstractMessageNotifierFacade | `{title}` | | `client-attributes` | GET | AbstractStripeOperationsFacade | — (busca IDs de atributos custom) | | `invoices/{id}` | GET | AbstractStripeOperationsFacade | — | --- ## API NMS/UNMS (v2.1) **Base URL:** `https://{ipserver}/nms/api/v2.1/` **Auth:** Header `X-Auth-Token: {unmsApiToken}` | Endpoint | Método | Usado en | Parámetros / Body | |---|---|---|---| | `user/login` | POST | public.php (nms_login) | `{username, password}` | | `user/login/totpauth` | POST | public.php (nms_login_totp) | `{twoFactorToken, totpCode}` | | `user` | GET | public.php (nms_verify_session) | Header `x-auth-token` | | `devices` | GET | AbstractMessageNotifierFacade | `?siteId={id}` | | `vault/{deviceId}/credentials` | GET | AbstractMessageNotifierFacade | Header `X-Auth-Token` | | `vault/{deviceId}/credentials/regenerate` | POST | AbstractMessageNotifierFacade | `[{username, password, readOnly}]` | --- ## API Stripe **Lib:** `stripe/stripe-php` SDK **Auth:** `stripeApiKey` (del config) | Recurso Stripe | Operación | Usado en | Parámetros relevantes | |---|---|---|---| | `paymentIntents.create` | POST | PaymentIntentService, AbstractStripeOperationsFacade | `amount, currency, customer, payment_method_types, metadata` | | `paymentIntents.all` | GET | PaymentIntentService | `customer, limit, expand:[data.charges]` | | `paymentIntents.retrieve` | GET | AbstractStripeOperationsFacade | `id` | | `customers.create` | POST | AbstractStripeOperationsFacade | `name, email, metadata:{clientId}` | | `customers.retrieve` | GET | AbstractStripeOperationsFacade | `id` | | `customers.update` | POST | AbstractStripeOperationsFacade | `name, email` | | `customers.retrieveCashBalance` | GET | PaymentIntentService | `stripeCustomerId` | | `customers.createFundingInstructions` | POST | AbstractStripeOperationsFacade | `currency, funding_type, bank_transfer:{type:mx_bank_transfer}` | --- ## API Callbell **Base URL:** `https://api.callbell.eu/v1/` **Auth:** Header `Authorization: Bearer {tokencallbell}` **Usado en:** `ClientCallBellAPI.php` | Endpoint | Método | Descripción | |---|---|---| | `contacts` | GET | Busca contacto por teléfono | | `contacts/{uuid}` | PATCH | Actualiza datos del contacto (nombre, custom fields) | | `messages/send` | POST | Envía mensaje / plantilla WhatsApp | --- ## Llamadas HTTP directas (cURL/Guzzle sin SDK) | Destino | Método | Usado en | Descripción | |---|---|---|---| | `self URL` (loopback) | POST | public.php `resend_payment`, `resend_job_notification` | Simula webhook reenviando JSON al mismo `public.php` | | `http://{ipPuppeteer}:{portPuppeteer}/generate` | POST | AbstractOxxoOperationsFacade | Genera imagen de voucher OXXO via Puppeteer | | MinIO presigned URL | PUT | MinioStorageService | Sube imagen del voucher generado | --- ## Atributos Custom de Cliente en UCRM que el plugin usa | Clave (`key`) | Nombre en UI | Usado para | |---|---|---| | `stripeCustomerId` | Stripe Customer ID | ID del customer en Stripe | | `clabeInterbancaria` | Clabe Interbancaria | CLABE para transferencias MX | | `passwordAntenaCliente` | Password Antena Cliente | Contraseña de la antena del cliente (desde UNMS vault) | | `antenaSectorial` | Antena Sectorial | Tipo de antena (usado en audit de passwords) | | `site` | Site | ID del sitio UNMS asociado al servicio |