# Detalles de la Publicación

> Recupera los detalles completos de una Publicación de Applivery usando la Integrations API o la Workspace API. Incluye endpoints, autenticación y ejemplos.

Source: https://docs.applivery.com/es/app-distribution/api/publications/publication-details/  •  Last updated: 2026-06-08

**Answers:** ¿Cómo obtengo la configuración completa de una publicación? · ¿Cuál es la diferencia entre Integrations API y Workspace API para obtener detalles de una publicación? · ¿Qué autenticación requiere la Integrations API para detalles de publicación? · ¿Qué autenticación requiere la Workspace API para detalles de publicación? · ¿Qué ocurre si no proporciono un token de autenticación válido? · ¿Qué significa un error 404 al recuperar detalles de una publicación? · ¿Por qué debo recuperar los detalles de una publicación antes de actualizarla? · ¿Cómo encuentro la URL pública de una publicación?

---

**TL;DR:** Obtén los detalles de una publicación en Applivery usando la API de Integraciones (App API Token) o la API de Workspace (Cuenta de servicio).

Devuelve la configuración completa de una Publicación individual, identificada por su `publishedApplicationId`. Usa este endpoint para inspeccionar el estado actual de una Publicación específica antes de actualizarla, verificar su configuración de acceso o recuperar su `distributionUrl`.

:::warning
Antes de actualizar una Publicación con PUT, **recupera siempre sus detalles actuales con este endpoint**. El [endpoint PUT](https://docs.applivery.com/en/app-distribution/api/publications/update-publication/) es una sustitución completa — obtener el estado actual te permite conservar los campos que no quieres modificar.
:::

Applivery proporciona dos APIs independientes para recuperar detalles de Publicaciones, cada una con una credencial de autenticación diferente.

---

## Cómo elegir la API correcta

| | Integrations API | Workspace API |
|---|---|---|
| **Diseñada para** | Integraciones por app y pipelines de CI/CD | Automatización a nivel de Workspace en varias Apps |
| **Autenticación** | App API Token (por app) | token de una cuenta de servicio (a nivel de Workspace) |
| **Contexto de app** | Implícito — el token ya está vinculado a una App | Explícito — se requieren `organizationId`, `storeId` y `publishedApplicationId` en la ruta |
| **Usuarios típicos** | Scripts que leen la configuración de una Publicación antes de actualizarla | Platform engineers que inspeccionan Publicaciones de varias Apps |

:::warning
El acceso a las distintas APIs puede no estar disponible en tu plan actual. Consulta la disponibilidad en nuestra [página de precios](https://www.applivery.com/app-distribution-pricing/).
:::

---

## Integrations API

Usa este endpoint para recuperar detalles de Publicaciones dentro del ámbito de una sola app. La autenticación usa un **App API Token**, vinculado a la App específica.

Para crear un App API Token, consulta [Autenticación de la API de Apps](https://docs.applivery.com/en/app-distribution/api/app-api-token/).

### Endpoint

```
GET https://api.applivery.io/v1/integrations/distributions/{publishedApplicationId}
```

### Autenticación

```
Authorization: Bearer <your_app_token>
```

### Parámetros de ruta

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `publishedApplicationId` | String | Sí | El identificador único de la Publicación a recuperar. P. ej. `552ae3cfcb5abfc58d733b81`. Devuelto por [POST – Crear una Publicación](https://docs.applivery.com/en/app-distribution/api/publications/create-publication/) y [GET – Lista de Publicaciones](https://docs.applivery.com/en/app-distribution/api/publications/list-publications/). |

### Ejemplo de petición

```bash
curl 'https://api.applivery.io/v1/integrations/distributions/552ae3cfcb5abfc58d733b81' \
  -X GET \
  -H 'Authorization: Bearer YOUR_APP_TOKEN'
```

### Respuestas

**✓ 200 OK**

```json
{
  "status": true,
  "data": {
    "id": "string",
    "updatedAt": "2025-10-23T07:54:26.518Z",
    "createdAt": "2024-07-23T08:10:46.471Z",
    "application": "string",
    "applicationInfo": {
      "id": "string",
      "slug": "string",
      "name": "string",
      "picture": "string"
    },
    "slug": "string",
    "filter": {
      "type": "last",
      "value": "string",
      "ios": "string",
      "android": "string",
      "windows": "string",
      "macos": "string",
      "builds": [
        {
          "buildPlatform": "string",
          "id": "string"
        }
      ]
    },
    "security": "public",
    "tags": ["string"],
    "groups": [["string"]],
    "activateUserAudiences": false,
    "userAudienceMap": [],
    "visibility": "active",
    "showHistory": false,
    "showDevInfo": false,
    "expirationDate": "string",
    "distributionUrl": "string",
    "terms": {
      "active": true,
      "text": "string"
    },
    "configuration": {
      "branding": {
        "logo": "string",
        "primaryColor": "string",
        "useAppIcon": false
      },
      "application": {
        "description": "string",
        "name": "string"
      }
    },
    "allowedCountries": [],
    "blockedCountries": []
  }
}
```

**✗ 401 Unauthorized**

```json
{
  "status": false,
  "error": {
    "code": 4002,
    "message": "No auth token"
  }
}
```

**✗ 404 Not Found**

```json
{
  "status": false,
  "error": {
    "code": 3001,
    "message": "Entity not found"
  }
}
```

### Campos principales de la respuesta

| Campo | Descripción |
|---|---|
| `id` | El identificador único de esta Publicación (`publishedApplicationId`). |
| `slug` | El identificador amigable para URL que forma parte de la URL de la Publicación. |
| `distributionUrl` | La URL pública completa de la Publicación. |
| `security` | Modo de seguridad actual: `public`, `password` o `logged`. |
| `visibility` | Estado de visibilidad actual: `active`, `inactive` o `unlisted`. |
| `filter.type` | Estrategia de selección de Build: `last`, `build`, `builds`, `gitBranch`, `gitTag` o `tag`. |
| `filter.value` | El nombre de rama, git tag o build tag configurado actualmente (para los tipos de filtro `gitBranch`, `gitTag` y `tag`). |
| `filter.ios` / `filter.android` / `filter.macos` / `filter.windows` | IDs de Build por plataforma (para el tipo de filtro `build`). |
| `filter.builds` | Array de objetos `{ buildPlatform, id }` (para el tipo de filtro `builds`, incluidas plataformas personalizadas). |
| `expirationDate` | Timestamp ISO 8601 a partir del cual la Publicación deja de estar disponible. `null` si no hay caducidad configurada. |
| `groups` | Array anidado de identificadores de Grupos de usuarios que controlan el acceso (lógica AND/OR). |
| `activateUserAudiences` | Si el control de acceso basado en audiencias está habilitado. |
| `userAudienceMap` | Array de asignaciones de audiencias, cada una con `id` y `notifyNewBuildsProcessed`. |
| `showHistory` | Si los usuarios pueden explorar e instalar Builds anteriores. |
| `showDevInfo` | Si se muestra información técnica de la Build (metadatos de git, detalles del certificado, tags) a los usuarios. |
| `allowedCountries` | Códigos de país desde los que se permite el acceso. Array vacío significa sin restricción de país. |
| `blockedCountries` | Códigos de país desde los que se bloquea el acceso. Array vacío significa sin restricción de país. |
| `configuration.application` | Sobreescrituras del nombre y descripción de la app aplicadas a esta Publicación. |
| `configuration.branding` | Sobreescrituras de logo, color primario y color de botón aplicadas a esta Publicación. |
| `terms` | Configuración de términos legales — `active` indica si se requiere aceptación, `text` contiene el contenido de los términos. |

---

## Workspace API

Usa este endpoint para recuperar detalles de Publicaciones a nivel de Workspace — por ejemplo, en pipelines de automatización que operan en varias Apps usando una sola credencial.

La autenticación usa un token de **cuenta de servicio**, con ámbito de Workspace y no vinculado a ninguna app individual.

Para crear un token de una cuenta de servicio, consulta [Cuentas de servicio](https://docs.applivery.com/en/platform/api/service-accounts/).

### Endpoint

```
GET https://api.applivery.io/v1/organizations/{organizationId}/stores/{storeId}/pubApps/{publishedApplicationId}
```

### Parámetros de ruta

| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| `organizationId` | String | Sí | El identificador único de tu organización en Applivery. |
| `storeId` | String | Sí | El identificador único de la store (proyecto de app) a la que pertenece la Publicación. |
| `publishedApplicationId` | String | Sí | El identificador único de la Publicación a recuperar. |

### Autenticación

```
Authorization: Bearer <your_service_account_token>
```

### Ejemplo de petición

```bash
curl 'https://api.applivery.io/v1/organizations/ORG_ID/stores/STORE_ID/pubApps/552ae3cfcb5abfc58d733b81' \
  -X GET \
  -H 'Authorization: Bearer YOUR_SERVICE_ACCOUNT_TOKEN'
```

El esquema de respuesta es idéntico al de la Integrations API.
