Connect

Verificar una publicación de LinkedIn

Verifica por su identificador una publicación conocida de la misma cuenta o página autorizada.

Tool IDlinkedin.publicacion.verificar
Nombre MCPlinkedin__publicacion__verificar
Conectorlinkedin
Planoaction
Scope (permiso)linkedin:readonly
Authconnection_credentials
Versión1
Sensiblesí
Deprecadono
ComportamientoreadOnly=true, destructive=false, idempotent=true, openWorld=true

Requiere conexión. Indica cuál en cada llamada: header X-Connect-Connection en REST y campo connectionId en el execute de MCP. No hay resolución implícita, ni siquiera con una sola conexión activa: la conexión es la empresa. El id sale de conexiones.estado.consultar.

Qué hace

Consulta en vivo sin guardar historial. No busca publicaciones, no lee métricas y no permite repetir un envío. La lectura de publicaciones personales de LinkedIn requiere un permiso restringido independiente de publicar.

Entrada

CampoTipoRequeridoDescripción
publicacionIdstringsíIdentificador textual de una publicación de esta misma cuenta, obtenido al publicar. No acepta enlaces ni ids de otras cuentas.
JSON Schema de entrada
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "publicacionId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 240,
      "description": "Identificador textual de una publicación de esta misma cuenta, obtenido al publicar. No acepta enlaces ni ids de otras cuentas."
    }
  },
  "required": [
    "publicacionId"
  ],
  "additionalProperties": false
}

Ejemplo

curl
curl -X POST https://connect.emisso.ai/api/v1/tools/linkedin.publicacion.verificar/execute \
  -H "Authorization: Bearer connect_sk_…" \
  -H "X-Connect-Connection: conn_9tKfR2mQx4Vb" \
  -H "Content-Type: application/json" \
  -d '{"input":{"publicacionId":"123456789"}}'
MCP · meta-tool execute
{
  "tool": "linkedin.publicacion.verificar",
  "params": {
    "publicacionId": "123456789"
  },
  "connectionId": "conn_9tKfR2mQx4Vb"
}

Salida esperada (200):

{
  "data": {
    "estado": "pendiente",
    "publicacionId": "123456789",
    "url": null
  },
  "meta": {
    "request_id": "req_…",
    "tool_id": "linkedin.publicacion.verificar",
    "plane": "action",
    "latency_ms": 7410,
    "audit_status": "recorded"
  }
}

Salida

CampoTipoRequeridoDescripción
estado"publicado" · "pendiente" · "requiere_revision" · "no_publicado"síEstado comprobado por lectura del ID en esta cuenta. requiere_revision incluye permisos insuficientes o falta de evidencia; nunca autoriza un nuevo envío.
publicacionIdstringsíIdentificador textual que se verificó.
urlstringnullsí
JSON Schema de salida
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "estado": {
      "type": "string",
      "enum": [
        "publicado",
        "pendiente",
        "requiere_revision",
        "no_publicado"
      ],
      "description": "Estado comprobado por lectura del ID en esta cuenta. requiere_revision incluye permisos insuficientes o falta de evidencia; nunca autoriza un nuevo envío."
    },
    "publicacionId": {
      "type": "string",
      "maxLength": 240,
      "description": "Identificador textual que se verificó."
    },
    "url": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 2048,
          "format": "uri"
        },
        {
          "type": "null"
        }
      ],
      "description": "Enlace público comprobado, o null si no se conoce."
    }
  },
  "required": [
    "estado",
    "publicacionId",
    "url"
  ],
  "additionalProperties": false
}

Errores de esta tool

CódigoHTTPReintentableQué hacer
connection_disabled403noReactívala en /connections o usa otra conexión del mismo sistema.
connection_not_found404noUsa uno de los connectionId que lista el error, o revisa la conexión en /connections. No hace falta reactivar nada.
connection_credential_required428noCrea un enlace con conexiones.enlace.crear (modo reconectar si la conexión ya existe) y pide a la persona que entregue la credencial de nuevo. No reintentes con la credencial anterior.
connection_busy409síEspera unos segundos y reintenta. Es una espera transitoria: no necesitas volver a conectar ni ingresar la credencial otra vez.
upstream_error502síReintenta más tarde. Si persiste, el problema está en el sistema externo, no en tu integración.
timeout504síReintenta. Para sincronizaciones largas usa la vía asíncrona y consulta el estado del trabajo.
connector_onboarding_required428noLee el mensaje: dice qué falta. Se completa en el portal de ese sistema, no en Connect, y después la llamada funciona sin cambios.
connection_scope_not_enabled403noPide a un owner/admin que habilite el scope en /connections para esa conexión, o usa otra que ya lo tenga activo. Cambiar la credencial del actor no resuelve este error.
rate_limited429síEspera y reintenta con backoff exponencial.
upstream_unexpected_response502noNo reintentes: la respuesta es determinista. Repórtalo con el request_id para que actualicemos el conector.
external_resource_not_found404noVerifica el identificador con la tool de búsqueda del mismo sistema. Reintentar con el mismo identificador da el mismo resultado.

Toda llamada puede devolver además los códigos transversales (validation_error, unauthorized, scope_not_granted, rate_limited, entre otros): el detalle vive en el catálogo de errores.

En esta página