This workflow follows the Chainllm → Form Trigger recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Jira[AI]",
"nodes": [
{
"parameters": {
"project": {
"__rl": true,
"value": "10454",
"mode": "list",
"cachedResultName": "Proyecto Prueba 2.0"
},
"issueType": {
"__rl": true,
"value": "10441",
"mode": "list",
"cachedResultName": "Historia"
},
"summary": "={{ $json.resultado }}",
"additionalFields": {
"description": "={{ $json.text }}"
}
},
"type": "n8n-nodes-base.jira",
"typeVersion": 1,
"position": [
780,
-240
],
"id": "2cdd783d-e804-4aba-8987-8075ad81ec06",
"name": "Jira Software",
"credentials": {
"jiraSoftwareCloudApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"jsCode": "const proyectokey = $input.first().json.fields.project.id;\nconst keytarea = $('Datos_Estaticos_Proyecto_tipo_tareas1').first().json.resultado;\nconst parent_issue_key = $input.first().json.key\n\nreturn [\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"TANA_01\",\n nombre_tipo_tarea: \"Tarea de An\u00e1lisis\",\n issue_type: \"10462\",//An\u00e1lisis\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"VANA_01\",\n nombre_tipo_tarea: \"Verificaci\u00f3n par de An\u00e1lisis\",\n issue_type: \"10417\",//Ver. An\u00e1lisis\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"TDES_01\",\n nombre_tipo_tarea: \"Tarea de Dise\u00f1o\",\n issue_type: \"10463\",//Dise\u00f1o\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"VDES_01\",\n nombre_tipo_tarea: \"Verificaci\u00f3n par de Dise\u00f1o\",\n issue_type: \"10418\",//Ver. Dise\u00f1o\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"TDEV_01\",\n nombre_tipo_tarea: \"Administraci\u00f3n de Cargos\",\n issue_type: \"10465\",//Desarrollo\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"CTES_01\",\n nombre_tipo_tarea: \"Caso de prueba. Administraci\u00f3n de Cargos\",\n issue_type: \"10438\",//Caso de Prueba\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n },\n {\n json: {\n keytarea: keytarea,\n codigo_tipo_tarea: \"VTES_01\",\n nombre_tipo_tarea: \"Verificaci\u00f3n Casos de prueba\",\n issue_type: \"10419\",//Ver. Casos de Prueba\n proyecto: proyectokey,\n parent_issue_key: parent_issue_key\n }\n }\n];\n"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
1100,
-240
],
"id": "c9c8df5c-5960-4b98-bacc-087583cecd39",
"name": "Datos_Estaticos_Proyecto_tipo_tareas"
},
{
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "const Codigo = $json['Codigo del proyeto'];\nconst Numero_Historia = $json.Numero;\nconst str = Codigo + '_' + Numero_Historia;\n\nreturn {\n json: {\n resultado: str\n }\n};\n"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
80,
-360
],
"id": "c9938e2b-bf0b-40ac-a727-4b03e082f897",
"name": "Datos_Estaticos_Proyecto_tipo_tareas1"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "45c83ac6-2752-45ac-b37c-2d40ae668ab9",
"name": "resultado",
"value": "={{ $json.resultado }} - {{ $('Edit Fields3').item.json['Nombre del la historia'] }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
220,
-360
],
"id": "408e0e0a-7031-4fa2-9dad-2a8433fa714e",
"name": "Edit Fields1"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "7e61ba4c-f5ce-4a36-9cc7-f6949c4140c6",
"name": "codigo_nombre",
"value": "={{ $json.keytarea }}_{{ $json.codigo_tipo_tarea }} {{ $json.nombre_tipo_tarea }}",
"type": "string"
},
{
"id": "ea2c9f69-13f6-4c72-b909-d88619cf7da0",
"name": "proyecto",
"value": "={{ $json.proyecto }}",
"type": "string"
},
{
"id": "80f84e76-87d2-4ba6-a3b1-7b871b55e6b6",
"name": "issue_type",
"value": "={{ $json.issue_type }}",
"type": "string"
},
{
"id": "2d7bb868-0347-452d-98cb-b39a01c24a5e",
"name": "parent_issue_key",
"value": "={{ $json.parent_issue_key }}",
"type": "string"
},
{
"id": "22978179-2ab3-4f03-bde8-d99c04aca47e",
"name": "Cuerpo",
"value": "={{ $json.text }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
1440,
-80
],
"id": "b22d1870-9b99-413d-b198-bc10bf0cd924",
"name": "Edit Fields2"
},
{
"parameters": {
"operation": "get",
"issueKey": "={{ $json.key }}",
"additionalFields": {}
},
"type": "n8n-nodes-base.jira",
"typeVersion": 1,
"position": [
940,
-240
],
"id": "2bc4f066-2b04-4b7b-8151-78fdecede8b0",
"name": "Jira Software1",
"credentials": {
"jiraSoftwareCloudApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"project": {
"__rl": true,
"value": "={{ $json.proyecto }}",
"mode": "id"
},
"issueType": {
"__rl": true,
"value": "={{ $json.issue_type }}",
"mode": "id"
},
"summary": "={{ $json.codigo_nombre }}",
"additionalFields": {
"description": "={{ \n ($json.issue_type == 10465 || $json.issue_type == \"10465\") \n ? `\nh2. *Datos de la KB*\n\n* *Nombre:* ${$json.codigo_nombre}\n* *Genexus:* GX 17 U13\n* *Info:* [Datos KB](https://link.com)\n\n\n***\n\n`+\n$json.Cuerpo\n+`\n\nSe adjunta estimador:` \n : \"\" \n}}\n",
"parentIssueKey": "={{ $json.parent_issue_key }}"
}
},
"type": "n8n-nodes-base.jira",
"typeVersion": 1,
"position": [
1580,
-80
],
"id": "2ae0fd0c-eaa3-40c0-9d32-46d61778604c",
"name": "Jira Software2",
"credentials": {
"jiraSoftwareCloudApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"formTitle": "Tareas Automatizadas",
"formFields": {
"values": [
{
"fieldLabel": "Historia",
"fieldType": "textarea",
"placeholder": "Information Relevante de la Historia"
},
{
"fieldLabel": "Nombre del la historia",
"placeholder": "Nombre que va a recibir la historia"
},
{
"fieldLabel": "Numero",
"fieldType": "number",
"placeholder": "Numero de la historia"
},
{
"fieldLabel": "Nombre De Proyecto",
"fieldType": "dropdown",
"fieldOptions": {
"values": [
{
"option": "Tablero Proyecto Prueba 2.0"
}
]
}
}
]
},
"options": {}
},
"type": "n8n-nodes-base.formTrigger",
"typeVersion": 2.2,
"position": [
-360,
-60
],
"id": "badc82a3-2880-46e1-8d63-a26e15df5046",
"name": "On form submission"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "367fbe15-8904-439f-98f0-340f4aa71ba5",
"name": "Historia",
"value": "={{ $json.Historia }}",
"type": "string"
},
{
"id": "fde62966-67ae-49ae-ad6b-08cbdacbf631",
"name": "Nombre del la historia",
"value": "={{ $json['Nombre del la historia'] }}",
"type": "string"
},
{
"id": "e9f45090-f232-414d-8329-9527455868d7",
"name": "Numero",
"value": "={{ $json.Numero }}",
"type": "number"
},
{
"id": "b28c9993-f7e5-48cf-80c7-cbb913c8df16",
"name": "Nombre De Proyecto",
"value": "={{ $json['Nombre De Proyecto'] }}",
"type": "string"
},
{
"id": "3c457b15-401f-493d-8d8e-915b6350aee7",
"name": "Codigo del proyeto",
"value": "={{ $json[\"Nombre De Proyecto\"] === \"Tablero Proyecto Prueba 2.0\" ? \"PP20\" : \"\" }}",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
-60,
-360
],
"id": "c78b95da-8b77-4032-b546-331957e740d9",
"name": "Edit Fields3"
},
{
"parameters": {
"operation": "completion",
"completionTitle": "Finalizaci\u00f3n del proceso",
"completionMessage": "=Se ha finalizado el proceso sin ning\u00fan inconveniente.\n\nhttps://scitech.atlassian.net/browse/{{ $('Jira Software1').item.json.key }}",
"options": {}
},
"type": "n8n-nodes-base.form",
"typeVersion": 1,
"position": [
1720,
-80
],
"id": "8b72d6b5-ca61-404c-9782-afdb02814be9",
"name": "Form"
},
{
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
40,
240
],
"id": "9037fde7-e1d1-4950-8b6e-bf30a7277113",
"name": "OpenAI Chat Model",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=en el proyecto {{ $json['Nombre De Proyecto'] }} en la historia [ {{ $json['Nombre del la historia'] }} ] numero {{ $json.Numero }} se requiere que:\n\nAct\u00faa como un analista t\u00e9cnico con experiencia en desarrollo GeneXus.\n\nA continuaci\u00f3n recibir\u00e1s un texto con informaci\u00f3n recopilada de una reuni\u00f3n con el cliente y/o apuntes del analista, posiblemente desordenados. A partir de este contenido, genera una historia t\u00e9cnica estructurada para desarrollo siguiendo este formato:\n\n**Desarrollo**\n\n1. **Objetivo**: Explica claramente qu\u00e9 se requiere lograr con este desarrollo. S\u00e9 directo y t\u00e9cnico, evitando ambig\u00fcedades.\n\n2. **Desarrollo a realizar**: Describe paso a paso lo que se debe desarrollar. Incluye:\n - Cambios a estructuras, tablas o transacciones.\n - Creaci\u00f3n de nuevos procedimientos o componentes.\n - Par\u00e1metros que recibir\u00e1 el desarrollo.\n - Flujos de validaci\u00f3n y navegaci\u00f3n de tablas.\n - Nombres de campos, estructuras, ejemplos de nombres de archivos, etc.\n\nUsa nombres concretos si se mencionan en el contenido.\n\n---\n\n**Consideraciones** \nIncluye validaciones importantes, supuestos t\u00e9cnicos, restricciones, sobrescrituras, o cualquier punto que el desarrollador debe tener en cuenta para que el desarrollo funcione correctamente.\n\n---\n\nContenido base a estructurar:\n\n\u00b4\u00b4\u00b4\u00b4\n{{ $json.Historia }}\n\u00b4\u00b4\u00b4\u00b4\n\nTransforma este contenido en una historia t\u00e9cnica clara, completa y bien redactada para su uso inmediato por el equipo de desarrollo.\n",
"batching": {}
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.7,
"position": [
460,
-60
],
"id": "c9e266ae-62ac-438d-b6a6-f59cf1a26bf0",
"name": "Tarea de dasarrollo description"
},
{
"parameters": {
"promptType": "define",
"text": "=Act\u00faa como un analista t\u00e9cnico especializado en desarrollo con GeneXus y gesti\u00f3n de historias en JIRA.\n\nVas a recibir un texto desordenado proveniente de una reuni\u00f3n con el cliente o de apuntes t\u00e9cnicos. Tu tarea es estructurarlo como una *historia principal (epic)* en formato enriquecido para JIRA, con la m\u00e1s alta claridad, especificidad t\u00e9cnica y calidad descriptiva.\n\nEl formato debe ser el siguiente (usando sintaxis enriquecida de JIRA):\n\nh2. *Datos de la KB*\n\n* *Nombre:* ${$json.codigo_nombre}\n* *Genexus:* GX 17 U13\n* *Info:* [Datos KB](https://link.com)\n\n***\n\nh2. *Desarrollo*\n\n* *1. Objetivo:* \nEscribe el objetivo funcional de la historia desde la perspectiva del usuario y lo que se busca lograr. Usa el formato \"Como... Quiero... Para...\" si aplica.\n\n* *2. Desarrollo a realizar:* \nEstructura los puntos principales como pasos detallados y numerados. Incluye:\n\n- Procesos que se deben implementar o actualizar.\n- Pantallas que se deben modificar (con nombre t\u00e9cnico y ruta si se menciona).\n- Validaciones a realizar.\n- Nombres de procedimientos, estructuras o campos t\u00e9cnicos.\n- C\u00f3mo deben construirse las rutas y nombres de archivos.\n- Comportamientos esperados en condiciones espec\u00edficas (ej: cu\u00e1ndo sobrescribir, cu\u00e1ndo no ejecutar).\n\nUtiliza bullets (`-`) y subt\u00edtulos (`*A)`, `*B)`, etc.) si es necesario para mayor claridad.\n\n* *3. Consideraciones:* \nEspecifica todas las validaciones, reglas t\u00e9cnicas, restricciones, criterios de aceptaci\u00f3n y condiciones especiales que el desarrollo debe cumplir.\n\nIncluye:\n\n- Validaci\u00f3n de existencia de carpetas y comportamiento.\n- Criterios de versi\u00f3n de documentos.\n- Validaciones por tipo de documento.\n- Comportamiento esperado de las pantallas seg\u00fan el estado.\n- Procedimientos auxiliares que deben usarse o modificarse.\n\n***\n\nContenido a estructurar:\n{{ $json.Historia }}\n\nGenera la historia como si fuera a servir de base para dividirse en varias subtareas de desarrollo.\n",
"batching": {}
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.7,
"position": [
60,
40
],
"id": "65224072-0b08-45b8-9c22-e510f0c4a9f5",
"name": "Historia principal description"
},
{
"parameters": {
"content": "## v1",
"height": 360
},
"type": "n8n-nodes-base.stickyNote",
"position": [
1020,
60
],
"typeVersion": 1,
"id": "7f6a5683-8dd6-4cd5-b887-49dce6a473e1",
"name": "Sticky Note"
},
{
"parameters": {
"project": {
"__rl": true,
"value": "={{ $json.proyecto }}",
"mode": "id"
},
"issueType": {
"__rl": true,
"value": "={{ $json.issue_type }}",
"mode": "id"
},
"summary": "={{ $json.codigo_nombre }}",
"additionalFields": {
"description": "={{ \n ($json.issue_type == 10465 || $json.issue_type == \"10465\") \n ? `\nh2. *Datos de la KB*\n\n* *Nombre:* ${$json.codigo_nombre}\n* *Genexus:* GX 17 U13\n* *Info:* [Datos KB](https://link.com)\n\n\n***\n\n\nh2. *Desarrollo*\n\n* *1. Objetivo:* \n\n* *2. Desarrollo a realizar:* Para cumplir el objetivo propuesto...\n\n* *3. Consideraciones:* Es necesario tener en cuenta...\n\n\n***\n\n\nSe adjunta estimador:` \n : \"\" \n}}\n",
"parentIssueKey": "={{ $json.parent_issue_key }}"
}
},
"type": "n8n-nodes-base.jira",
"typeVersion": 1,
"position": [
1060,
260
],
"id": "f05d2b6f-0156-41de-a208-cf8e4f3281e9",
"name": "Jira Software3",
"credentials": {
"jiraSoftwareCloudApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "combine",
"fieldsToMatchString": "issue_type",
"joinMode": "enrichInput1",
"options": {}
},
"type": "n8n-nodes-base.merge",
"typeVersion": 3.2,
"position": [
1300,
-80
],
"id": "e13d09ec-6879-456d-bb64-3a3b80941f0a",
"name": "Merge"
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "bce3abb8-c5c3-4150-804e-382def409e67",
"name": "text",
"value": "={{ $json.text }}",
"type": "string"
},
{
"id": "d5d22057-99f8-49ac-861d-ce07ce725168",
"name": "issue_type",
"value": "10465",
"type": "string"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
780,
-60
],
"id": "71d2e11c-6b3b-4c63-bdde-b09f9ad532b2",
"name": "Edit Fields"
},
{
"parameters": {
"project": {
"__rl": true,
"value": "10454",
"mode": "list",
"cachedResultName": "Proyecto Prueba 2.0"
},
"issueType": {
"__rl": true,
"value": "10441",
"mode": "list",
"cachedResultName": "Historia"
},
"summary": "={{ $json.resultado }}",
"additionalFields": {
"description": "={{ \n`h2. Objetivo de la Historia\n\n* *Como:* [Rol del usuario] \n* *Quiero:* [Qu\u00e9 se desea lograr] \n* *Para:* [Para qu\u00e9 se quiere lograr]\n\n***\n\nh2. An\u00e1lisis de la Historia\n\nEl alcance de la presente historia es el siguiente:\n\n- Introducci\u00f3n al requerimiento \n- Detalle del requerimiento\n\n***\n\nh3. 1. Introducci\u00f3n al requerimiento\n\n[Descripci\u00f3n general del requerimiento, prop\u00f3sito y contexto]\n\n***\n\nh3. 2. Detalle del requerimiento\n\nPara cumplir con el alcance de esta historia es necesario realizar lo siguiente:\n\n- [Paso 1 o actividad] \n- [Paso 2 o criterio adicional] \n- [M\u00e1s detalles seg\u00fan sea necesario]\n\n***\n\n*Fin del an\u00e1lisis*` \n}}\n"
}
},
"type": "n8n-nodes-base.jira",
"typeVersion": 1,
"position": [
1060,
120
],
"id": "e9cb0bb1-004b-41c5-ba5e-9e6f28d241a0",
"name": "Jira Software4",
"credentials": {
"jiraSoftwareCloudApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "combine",
"combineBy": "combineByPosition",
"options": {
"includeUnpaired": false
}
},
"type": "n8n-nodes-base.merge",
"typeVersion": 3.2,
"position": [
480,
-240
],
"id": "dd2a5922-43d5-4dd5-90d4-b2ff2dce4b91",
"name": "Merge1"
},
{
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.2,
"position": [
440,
160
],
"id": "6a238e69-6994-4b5c-8233-945180703750",
"name": "OpenAI Chat Model1",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Datos_Estaticos_Proyecto_tipo_tareas": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Datos_Estaticos_Proyecto_tipo_tareas1": {
"main": [
[
{
"node": "Edit Fields1",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields2": {
"main": [
[
{
"node": "Jira Software2",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields1": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 0
}
]
]
},
"Jira Software": {
"main": [
[
{
"node": "Jira Software1",
"type": "main",
"index": 0
}
]
]
},
"Jira Software1": {
"main": [
[
{
"node": "Datos_Estaticos_Proyecto_tipo_tareas",
"type": "main",
"index": 0
}
]
]
},
"Jira Software2": {
"main": [
[
{
"node": "Form",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Edit Fields3",
"type": "main",
"index": 0
},
{
"node": "Tarea de dasarrollo description",
"type": "main",
"index": 0
},
{
"node": "Historia principal description",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields3": {
"main": [
[
{
"node": "Datos_Estaticos_Proyecto_tipo_tareas1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Historia principal description",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Tarea de dasarrollo description": {
"main": [
[
{
"node": "Edit Fields",
"type": "main",
"index": 0
}
]
]
},
"Merge": {
"main": [
[
{
"node": "Edit Fields2",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"Historia principal description": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 1
}
]
]
},
"Merge1": {
"main": [
[
{
"node": "Jira Software",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "Tarea de dasarrollo description",
"type": "ai_languageModel",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "1fe42788-32fe-4553-99e7-050ef5c20ffc",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "SkHDtQQBdvSPfuMu",
"tags": []
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
jiraSoftwareCloudApiopenAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Jira[AI]. Uses jira, formTrigger, form, lmChatOpenAi. Event-driven trigger; 20 nodes.
Source: https://gist.github.com/brayanmezac/fd0546d1b810c79422806c5d0e63a043 — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This template attempts to replicate OpenAI's DeepResearch feature which, at time of writing, is only available to their pro subscribers.
My workflow 53. Uses formTrigger, httpRequest, lmChatOpenAi, form. Event-driven trigger; 74 nodes.
This workflow serves as a comprehensive "Workflow Nodes SEO & Documentation Generator". It uses AI to analyze, rename, and document n8n workflows, offering a streamlined way to optimize workflow reada
This workflow streamlines how employees request equipment/items and how those requests reach the Procurement team. It validates the employee by enrollment number, detects whether a manager exists, and
Get a 360 Social media presence report for a person