Saas
SaaS API
API Service for SaaS
Servidor base: https://services.leadconnectorhq.com
Endpoints
- GET /saas-api/public-api/locations — Obtener locations by stripeId with companyId
- PUT /saas-api/public-api/update-saas-subscription/{locationId} — Actualizar SaaS subscription
- POST /saas-api/public-api/bulk-disable-saas/{companyId} — Deshabilitar SaaS for locations
- POST /saas-api/public-api/enable-saas/{locationId} — Habilitar SaaS for Sub-Account (Formerly Location)
- POST /saas-api/public-api/pause/{locationId} — Pause location
- POST /saas-api/public-api/update-rebilling/{companyId} — Actualizar Rebilling
- GET /saas-api/public-api/agency-plans/{companyId} — Obtener Agency Plans
- GET /saas-api/public-api/get-saas-subscription/{locationId} — Obtener Location Subscription Details
- POST /saas-api/public-api/bulk-enable-saas/{companyId} — Bulk Enable SaaS
- GET /saas-api/public-api/saas-locations/{companyId} — Obtener SaaS Locations
- GET /saas-api/public-api/saas-plan/{planId} — Obtener SaaS Plan
- GET /saas/locations — Obtener locations by stripeId with companyId
- PUT /saas/update-saas-subscription/{locationId} — Actualizar SaaS subscription
- POST /saas/bulk-disable-saas/{companyId} — Deshabilitar SaaS for locations
- POST /saas/enable-saas/{locationId} — Habilitar SaaS for Sub-Account (Formerly Location)
- POST /saas/pause/{locationId} — Pause location
- POST /saas/update-rebilling/{companyId} — Actualizar Rebilling
- GET /saas/agency-plans/{companyId} — Obtener Agency Plans
- GET /saas/get-saas-subscription/{locationId} — Obtener Location Subscription Details
- POST /saas/bulk-enable-saas/{companyId} — Bulk Enable SaaS
- GET /saas/saas-locations/{companyId} — Obtener SaaS Locations
- GET /saas/saas-plan/{planId} — Obtener SaaS Plan
- POST /saas/allow-attach-rebilling/{locationId} — Allow Attach Rebilling
- GET /saas-api/public-api/companies/{companyId}/locations/{locationId}/wallet-balance — Obtener Location Wallet Balance
- POST /saas-api/public-api/companies/{companyId}/locations/{locationId}/wallet-balance/complimentary-credits — Actualizar Location Wallet Balance
GET /saas-api/public-api/locations
Obtener locations by stripeId with companyId Get locations by stripeCustomerId or stripeSubscriptionId with companyId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- customerId (query, string) — Stripe customer Id to find locations for
- subscriptionId (query, string) — Stripe subscription Id to find locations for
- companyId (query, string) (requerido) — Company Id to filter locations
Respuestas:
- 200 — Locations retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
PUT /saas-api/public-api/update-saas-subscription/{locationId}
Actualizar SaaS subscription Update SaaS subscription for given locationId and customerId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) — Location Id to update subscription for
Cuerpo de la peticion (application/json):
- subscriptionId (requerido) — string — Subscription Id
- customerId (requerido) — string — Customer Id
- companyId (requerido) — string — Company Id
Respuestas:
- 200 — SaaS subscription updated successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/bulk-disable-saas/{companyId}
Deshabilitar SaaS for locations Disable SaaS for locations for given locationIds
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id to disable SaaS for
Cuerpo de la peticion (application/json):
- locationIds (requerido) — array — Location IDs
Respuestas:
- 200 — SaaS disabled successfully for locations
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/enable-saas/{locationId}
Habilitar SaaS for Sub-Account (Formerly Location)
Enable SaaS for Sub-Account (Formerly Location) based on the data provided
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) — Location Id to enable SaaS for
Cuerpo de la peticion (application/json):
- stripeAccountId — string — Stripe account id(Required only for SaaS V1)
- name — string — Name of the stripe customer(Required only for SaaS V1)
- email — string — Email of the stripe customer(Required only for SaaS V1)
- stripeCustomerId — string — Stripe customer id if exists(Required only for SaaS V1)
- companyId (requerido) — string
- isSaaSV2 (requerido) — boolean — Denotes if it is a saas v2 or v1 sub-account
- contactId — string — Agency subaccount used for payment provider integration(Required Only for SaaS V2)
- providerLocationId — string — Agency Subaccount Id
- description — string — Description
- saasPlanId — string — Required only while pre-configuring saas subscription
- priceId — string — Required only while pre-configuring saas subscription
Respuestas:
- 200 — SaaS enabled successfully for location
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/pause/{locationId}
Pause location Pause Sub account for given locationId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) — Location Id to pause/unpause
Cuerpo de la peticion (application/json):
- paused (requerido) — boolean — Paused
- companyId (requerido) — string — Company Id
Respuestas:
- 200 — Location paused/unpaused successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/update-rebilling/{companyId}
Actualizar Rebilling Bulk update rebilling for given locationIds
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id to update rebilling for
Cuerpo de la peticion (application/json):
- product (requerido) — string — The product to update rebilling for
- locationIds (requerido) — array — Array of location IDs to update rebilling for
- config (requerido) — object — Configuration for rebilling settings
- optIn — boolean — Enable the product for the locations
- enabled — boolean — Enable the rebilling for the locations
- markup — number — Additional value to be added in terms of percentage. For example, if the product price is $100 and the markup is 5, the amount charged to will be $105.
Respuestas:
- 200 — Rebilling updated successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
GET /saas-api/public-api/agency-plans/{companyId}
Obtener Agency Plans Fetch all agency subscription plans for a given company Id
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id to get agency plans for
Respuestas:
- 200 — Agency plans retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
GET /saas-api/public-api/get-saas-subscription/{locationId}
Obtener Location Subscription Details Fetch subscription details for a specific location from location metadata
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) — Location Id to get subscription details for
- companyId (query, string) (requerido) — Company Id to filter subscription details
Respuestas:
- 200 — Location subscription details retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/bulk-enable-saas/{companyId}
Bulk Enable SaaS Enable SaaS mode for multiple locations with support for both SaaS v1 and v2
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id to enable SaaS for
Cuerpo de la peticion (application/json):
- locationIds (requerido) — array — Array of location IDs to enable SaaS for
- isSaaSV2 (requerido) — boolean — Indicates if the SaaS is V2
- actionPayload (requerido) — — Action payload for the bulk enable SaaS operation
Respuestas:
- 200 — Bulk SaaS enable operation completed successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
GET /saas-api/public-api/saas-locations/{companyId}
Obtener SaaS Locations Fetch all SaaS-activated locations for a company with pagination
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id to get SaaS locations for
- page (query, number) — Page number for pagination
Respuestas:
- 200 — SaaS locations retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
GET /saas-api/public-api/saas-plan/{planId}
Obtener SaaS Plan Fetch a specific SaaS plan by plan Id
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- planId (path, string) (requerido) — Plan Id to get SaaS plan details for
- companyId (query, string) (requerido) — Company Id to filter SaaS plan
Respuestas:
- 200 — SaaS plan retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
GET /saas/locations
Obtener locations by stripeId with companyId Get locations by stripeCustomerId or stripeSubscriptionId with companyId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- customerId (query, string) (requerido) —
- subscriptionId (query, string) (requerido) —
- companyId (query, string) (requerido) —
Respuestas:
- 200
PUT /saas/update-saas-subscription/{locationId}
Actualizar SaaS subscription Update SaaS subscription for given locationId and customerId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- subscriptionId (requerido) — string — Subscription Id
- customerId (requerido) — string — Customer Id
- companyId (requerido) — string — Company Id
Respuestas:
- 200
POST /saas/bulk-disable-saas/{companyId}
Deshabilitar SaaS for locations Disable SaaS for locations for given locationIds
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- locationIds (requerido) — array — Location IDs
Respuestas:
- 201
POST /saas/enable-saas/{locationId}
Habilitar SaaS for Sub-Account (Formerly Location)
Enable SaaS for Sub-Account (Formerly Location) based on the data provided
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- stripeAccountId — string — Stripe account id(Required only for SaaS V1)
- name — string — Name of the stripe customer(Required only for SaaS V1)
- email — string — Email of the stripe customer(Required only for SaaS V1)
- stripeCustomerId — string — Stripe customer id if exists(Required only for SaaS V1)
- companyId (requerido) — string
- isSaaSV2 (requerido) — boolean — Denotes if it is a saas v2 or v1 sub-account
- contactId — string — Agency subaccount used for payment provider integration(Required Only for SaaS V2)
- providerLocationId — string — Agency Subaccount Id
- description — string — Description
- saasPlanId — string — Required only while pre-configuring saas subscription
- priceId — string — Required only while pre-configuring saas subscription
Respuestas:
- 201
POST /saas/pause/{locationId}
Pause location Pause Sub account for given locationId
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- paused (requerido) — boolean — Paused
- companyId (requerido) — string — Company Id
Respuestas:
- 201
POST /saas/update-rebilling/{companyId}
Actualizar Rebilling Bulk update rebilling for given locationIds
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- product (requerido) — string — The product to update rebilling for
- locationIds (requerido) — array — Array of location IDs to update rebilling for
- config (requerido) — object — Configuration for rebilling settings
- optIn — boolean — Enable the product for the locations
- enabled — boolean — Enable the rebilling for the locations
- markup — number — Additional value to be added in terms of percentage. For example, if the product price is $100 and the markup is 5, the amount charged to will be $105.
Respuestas:
- 201
GET /saas/agency-plans/{companyId}
Obtener Agency Plans Fetch all agency subscription plans for a given company Id
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) —
Respuestas:
- 200
GET /saas/get-saas-subscription/{locationId}
Obtener Location Subscription Details Fetch subscription details for a specific location from location metadata
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) —
- companyId (query, string) (requerido) —
Respuestas:
- 200
POST /saas/bulk-enable-saas/{companyId}
Bulk Enable SaaS Enable SaaS mode for multiple locations with support for both SaaS v1 and v2
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) —
Cuerpo de la peticion (application/json):
- locationIds (requerido) — array — Array of location IDs to enable SaaS for
- isSaaSV2 (requerido) — boolean — Indicates if the SaaS is V2
- actionPayload (requerido) — — Action payload for the bulk enable SaaS operation
Respuestas:
- 201
GET /saas/saas-locations/{companyId}
Obtener SaaS Locations Fetch all SaaS-activated locations for a company with pagination
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) —
- page (query, number) (requerido) —
Respuestas:
- 200
GET /saas/saas-plan/{planId}
Obtener SaaS Plan Fetch a specific SaaS plan by plan Id
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- planId (path, string) (requerido) —
- companyId (query, string) (requerido) —
Respuestas:
- 200
POST /saas/allow-attach-rebilling/{locationId}
Allow Attach Rebilling Marks a SaaS sub-account as awaiting rebilling attach and optionally stores the rebilling configuration that should be applied when the rebilling config is created. Sets payment_pending on the sub-account. Only allowed when the sub-account is in setup_pending state.
Scopes requeridos: saas/company.read
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- locationId (path, string) (requerido) — Location Id (Sub-account) to allow attach rebilling for
Cuerpo de la peticion (application/json):
- companyId (requerido) — string — Company Id owning the location
- attachedRebillingConfig — object — Map of rebilling product code to its config. When provided, this gets stored on the sub-account so it can be applied when the rebilling config is created. Omit to only mark the sub-account as awaiting rebilling attach without any pre-configured products. Possible product keys: contentAI, workflow_premium_actions, workflow_ai, conversationAI, whatsApp, reviewsAI, EmailVerification, funnelAI, domainPurchase, Phone, Email, agentStudio, askai, aiStudio.
Respuestas:
- 200 — Allow attach rebilling completed successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 422 — Unprocessable entity (e.g. sub-account already in saas mode activated, or not in setup_pending state)
- 500 — Error interno del servidor
GET /saas-api/public-api/companies/{companyId}/locations/{locationId}/wallet-balance
Obtener Location Wallet Balance Fetch the wallet balance for a specific location. Returns a resource object with balance details.
Scopes requeridos: saas/company.read
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id that owns the location
- locationId (path, string) (requerido) — Location Id to get wallet balance for
Respuestas:
- 200 — Location wallet balance retrieved successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
POST /saas-api/public-api/companies/{companyId}/locations/{locationId}/wallet-balance/complimentary-credits
Actualizar Location Wallet Balance Update the wallet balance or complimentary credit settings for a specific location. Supports partial updates via updateMask field (AIP-134 compliant).
Scopes requeridos: saas/company.write
Parametros:
- Versión (header, string) (requerido) — Versión de la API
- companyId (path, string) (requerido) — Company Id that owns the location
- locationId (path, string) (requerido) — Location Id to update wallet balance for
Cuerpo de la peticion (application/json):
- complimentaryCreditsAmount — number — Credit amount to be added
Respuestas:
- 200 — Location wallet balance updated successfully
- 400 — Peticion invalida
- 401 — No autorizado
- 404 — Recurso no encontrado
- 500 — Error interno del servidor
