Compartir a través de


Esquema JSON de plantilla de sitio

La plantilla de sitio es una lista de acciones. Para ver acciones más complejas, como crear una lista, también hay disponibles subacciones. Cada acción se especifica con un valor "verb". Las acciones de verbo se ejecutan en el orden en que aparecen en el script JSON. Solo se pueden usar las acciones de verbo que se muestran aquí; en caso contrario, se producirá un error de "no se puede controlar la acción" al intentar cargar un script de sitio. Con el tiempo, se agregarán más acciones.

La estructura JSON general se especifica de esta forma:

{
  "$schema": "schema.json",
  "actions": [
    ...
    <one or more verb actions>
    ...
  ],
  "bindata": { },
  "version": 1
}

Sugerencia

Puede ver y hacer referencia al último esquema aquí: https://developer.microsoft.com/json-schemas/sp/site-design-script-actions.schema.json

Nota:

Las acciones se pueden ejecutar más de una vez en un sitio. Al volver a ejecutar acciones en el mismo sitio con los mismos parámetros, se actualiza el esquema existente y no se duplica.

addContentTypesFromHub

Use el verbo addContentTypesFromHub para sincronizar los tipos de contenido de un concentrador de tipos de contenido con el sitio.

Nota:

Una vez que addContentTypesFromHub se aplica en un sitio, la subacción addContentType de una lista podrá agregarla a la lista por nombre.

Valor JSON

  • ids: una matriz de los identificadores de tipo de contenido que deben sincronizarse.

Ejemplo

{
  "verb": "addContentTypesFromHub",
  "ids": ["0x01007CE30DD1206047728BAFD1C39A850120"]
}

Crear una nueva lista de SharePoint

Use el verbo createSPList para crear una lista de SharePoint.

Nota:

Una vez que se aplica createSPList a un sitio, la ejecución de createSPList con el mismo nombre de lista actúa como una actualización de la lista existente.

Valores JSON

  • listName: Nombre de la lista.

  • templateType: qué plantilla aplicar a la lista. Normalmente, se usa un valor de 100. La lista completa de los valores del tipo de plantilla está documentada enenumeración de SPListTemplateType, pero los que son compatibles actualmente incluyen:

    Nombre de plantilla de lista Enum
    Lista genérica 100
    Biblioteca de documentos 101
    Encuesta 102
    Vínculos 103
    Anuncios 104
    Contactos 105
    Eventos 106
    Tareas 107
    Panel de discusión 108
    PictureLibrary 109
    Páginas del sitio 119
    Seguimiento de problemas 1100

    Si utiliza 101 o 119 y hace referencia a los nombres predeterminados ("Documentos" o "Páginas del sitio"), puede modificar la biblioteca creada con la plantilla. Vea el ejemplo abajo.

  • subactions: un conjunto de acciones que se ejecutan en el orden listado para crear su lista.

Ejemplo

{
  "verb": "createSPList",
  "listName": "Customer Tracking",
  "templateType": 100,
  "subactions": [
    {
      "verb": "setDescription",
      "description": "List of Customers and Orders"
    }
  ]
},
{
  "verb": "createSPList",
  "listName": "Documents",
  "templateType": 101,
  "subactions": [
    {
      "verb": "setDescription",
      "description": "This is a modified default document library"
    }
  ]
}

La matriz de subacciones ofrece acciones adicionales para especificar cómo crear la lista. Las sub acciones también se especifican utilizando un verbvalor.

setDescription

Establece la descripción de la lista.

Valor JSON

  • description: la descripción de la nueva lista.

Ejemplo

{
  "verb": "setDescription",
  "description": "List of Customers and Orders"
}

addSPField

Agrega un nuevo campo.

Valores JSON

  • fieldType: el tipo de campo se puede establecer en Text, Note, Number, Boolean, User, oDateTime Para otros tipos de datos, vea la acción addSPFieldXml.
  • displayName: el nombre del campo.
  • id: un atributo opcional. Si se proporciona, especifica el Id. del campo. Debe ser un GUID único, generado al azar. Se recomienda dar un valor a esto para asegurar que el campo no se agregue varias veces si se vuelve a ejecutar el guión.
  • internalName: un atributo opcional. Si se indica, especifica el nombre interno del campo. Si no, el nombre interno se basa en el nombre para mostrar.
  • isRequired: Verdaderosi este campo es necesario para contener información; de lo contrario, Falso.
  • addToDefaultView: Verdadero si el campo se agregará a la vista por defecto; de lo contrario,Falso.
  • enforceUnique: un atributo opcional que por defecto esFalso. Si esVerdadero, todos los valores de este campo deben ser únicos.

Ejemplo

{
  "verb": "addSPField",
  "fieldType": "Text",
  "displayName": "Customer Name",
  "isRequired": false,
  "id": "c532fcb9-cdb3-45c6-8247-c784dcd58e1a",
  "addToDefaultView": true
}

deleteSPField

Elimina un campo predeterminado especificado por el tipo de plantilla seleccionado.

Valor JSON

  • displayName: el nombre a mostrar para identificar el campo a borrar.

Ejemplo

{
  "verb": "deleteSPField",
  "displayName": "Modified"
}

addSPFieldXml

Permite definir los campos y los elementos con Lenguaje de marcado de aplicaciones de colaboración (CAML). Como referencia, vea Elemento Field (Campo). Es importante proporcionar el atributo de Id. en el esquema de campoXml para evitar que el campo se cree varias veces si el guión se ejecuta más de una vez.

Actualmente estas construcciones de campo no pueden ser designadas como columnas del sitio ni agregadas a los tipos de contenido. Para crear columnas de sitio con Field XML, use la acción createSiteColumnXml.

Valor JSON

  • schemaXml: el bloque CAML para definir el campo.
  • addToDefaultView: Verdadero si el campo se agregará a la vista por defecto; de lo contrario,Falso.

Ejemplo

{
  "verb": "addSPFieldXml",
  "schemaXml": "<Field ID=\"{596cbd92-36e3-40cc-a910-0f53468ce5e4}\" Type=\"Choice\" DisplayName=\"Project Category\" Required=\"FALSE\" Format=\"Dropdown\" StaticName=\"ProjectCategory\" Name=\"ProjectCategory\"><Default>Operations</Default><CHOICES><CHOICE>Operations</CHOICE><CHOICE>IT</CHOICE><CHOICE>Legal</CHOICE><CHOICE>Engineering</CHOICE></CHOICES></Field>"
}

addSPLookupFieldXml

Permite definir los campos de búsqueda y su elemento de listas dependiente con el Lenguaje de marcado de aplicaciones de colaboración (CAML). Como referencia, vea Elemento Field (Campo). Es importante proporcionar el atributo de Id. en el esquema de campoXml para evitar que el campo se cree varias veces si el guión se ejecuta más de una vez.

Valor JSON

  • schemaXml: el bloque CAML para definir el campo.
  • targetListName: el nombre que identifica la lista a la que hace referencia este campo de búsqueda. Proporcionar este o targetListUrl.
  • targetListUrl: una URL relacionado con la web que identifica la lista a la que este campo de búsqueda hace referencia. Proporcionar este o targetListName.
  • addToDefaultView: Verdadero si el campo se agregará a la vista por defecto; de lo contrario,Falso.

Ejemplo

{
  "verb": "addSPLookupFieldXml",
  "schemaXml": "<Field Type=\"Lookup\" DisplayName=\"Contoso Project Category\" Required=\"FALSE\" EnforceUniqueValues=\"FALSE\" ShowField=\"Title\" UnlimitedLengthInDocumentLibrary=\"FALSE\" RelationshipDeleteBehavior=\"None\" ID=\"{101f1f89-d667-4c7f-9ebc-76cb5831d0a2}\" StaticName=\"ContosoProjectCategory\" Name=\"ContosoProjectCategory\" />",
  "targetListName": "Contoso Project Master"
}

addSiteColumn

Subacción que agrega una columna de sitio previamente definida directamente a una lista (existente o creada mediante el script de sitio).

Valor JSON

  • internalName: el nombre interno de la columna del sitio para agregar.
  • addToDefaultView: atributo opcional que por defecto es False. Si es True, el campo que se acaba de agregar también se agregará a la vista predeterminada.

Ejemplo

 {
  "verb": "addSiteColumn",
  "internalName": "siteColumnUser",
  "addToDefaultView": true
 }

addSPView

Define y agrega una vista a la lista. Use esta acción para especificar las columnas que quiera y cómo quiere que se muestren los elementos de lista (con una consulta CAML). Las propiedades de la acción le permiten especificar los límites de fila y si la vista se pagina y se ejecuta de forma recursiva sobre elementos de carpetas anidadas. También puede designar la vista creada como predeterminada.

Valor JSON

  • name: el nombre de la vista.
  • viewFields: un conjunto de los nombres internos de los campos en su vista.
  • query: una cadena de consulta CAML que contiene lawherecláusula para la consulta de la vista. Ver Esquemas CAML.
  • rowLimit: el límite de filas de la vista.
  • isPaged: especifica si la vista está paginada.
  • makeDefault: si esVerdadero, la vista será la predeterminada para la lista; de lo contrario, Falso
  • scope: un ajuste opcional para especificar el alcance de la vista. Para más información, consulteenumeración SPViewScope.
  • formatterJSON: un ajuste opcional para especificar el formato JSON para la vista.

Ejemplo

{
  "verb": "addSPView",
  "name": "Contoso Projects by Category",
  "viewFields":
  [
    "ID",
    "Title",
    "siteColumnUser",
    "ProjectCategory"
  ],
  "query": "<OrderBy><FieldRef Name=\"ProjectCategory\" /><FieldRef Name=\"siteColumnUser\" Ascending=\"FALSE\" /></OrderBy>",
  "rowLimit": 100,
  "isPaged": true,
  "makeDefault": true
}

removeSPView

Quita una vista de una lista. Esta acción también puede usarse para quitar una vista que la plantilla de sitio ha aplicado.

Valor JSON

  • name: nombre de la vista que a eliminar.

Ejemplo

{
  "verb": "removeSPView",
  "name": "All Items"
}

addContentType

Agrega un tipo de contenido a la lista. En este momento, los tipos se limitan a los tipos de contenido predeterminado incluidos en la plantilla de sitio o definidos en un script con la acción createContentType.

Nota:

En este momento no se pueden agregar tipos de contenido empresarial.

Valor JSON

  • name: nombre del tipo de contenido para agregar.

Ejemplo

{
  "verb": "addContentType",
  "name": "name"
}

removeContentType

Quita un tipo de contenido que se especificó con el tipo de plantilla seleccionado.

Valor JSON

  • name: nombre del tipo de contenido a eliminar.

Ejemplo

{
  "verb": "removeContentType",
  "name": "name"
}

setSPFieldCustomFormatter

Establece el formato de columna de un campo. Para más información, vea Usar el formato de columna para personalizar SharePoint.

Valores JSON

  • fieldDisplayName: nombre para mostrar del campo en el que se opera.
  • formatterJSON: Un objeto JSON para usar como el campo CustomFormatter.

Ejemplo

En este ejemplo se da formato de barra de datos a una columna de números.

{
  "verb": "setSPFieldCustomFormatter",
  "fieldDisplayName": "Effort (days)",
  "formatterJSON":
  {
    "debugMode": true,
    "elmType": "div",
    "txtContent": "@currentField",
    "attributes": {
      "class": "sp-field-dataBars"
    },
    "style": {
      "width": {
        "operator": "?",
        "operands": [
          {
            "operator": ">",
            "operands": ["@currentField", "20"]
          },
          "100%",
          {
            "operator": "+",
              "operands": [
                {
                  "operator": "toString()",
                  "operands": [
                    {
                      "operator": "*",
                      "operands": ["@currentField",5]
                    }
                  ]
                },
                "%"
              ]
          }
        ]
      }
    }
  }
}

associateFieldCustomizer

Registra la extensión de campo para un campo de lista. Para obtener más información sobre estas extensiones del lado cliente, vea el tutorial Crear un personalizador de campo.

Valores JSON

  • internalName: el nombre interno del campo a operar.
  • clientSiteComponentId: el identificador (GUID) de la extensión en el catálogo de aplicaciones. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.
  • clientSiteComponentProperties: un parámetro opcional, que puede ser usado para proporcionar propiedades para la instancia de extensión de la personalización de campo.

Ejemplo

{
  "verb": "createSPList",
  "listName": "Custom List with Slider Extension",
  "templateType": 100,
  "subactions": [
    {
      "verb": "setDescription",
      "description": "Custom list to illustrate SharePoint site scripting"
    },
    {
      "verb": "addSPField",
      "fieldType": "Text",
      "displayName": "Text Field",
      "isRequired": false,
      "addToDefaultView": true
    },
    {
      "verb": "addSPField",
      "fieldType": "Number",
      "displayName": "Number Field",
      "internalName": "ElectricSlide",
      "addToDefaultView": true,
      "isRequired": true
    },
    {
      "verb": "associateFieldCustomizer",
      "internalName": "ElectricSlide",
      "clientSideComponentId": "35944670-3111-4482-b152-9e9d1sean9f7",
      "clientSideComponentProperties": "{\"sampleText\":\"Yes - added by a site template, what?\"}"
    }
  ]
}

associateListViewCommandSet

Asocia un ListViewCommandSet a la lista

Valores JSON

  • title: el título de la extensión.
  • location: un parámetro necesario para especificar dónde se muestra el comando. Las opciones son: ClientSideExtension.ListViewCommandSet.ContextMenu o ClientSideExtension.ListViewCommandSet.CommandBar.
  • clientSideComponentId: el identificador (GUID) de la extensión en el catálogo de aplicaciones. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.
  • clientSideComponentProperties: un parámetro opcional, que puede ser usado para proporcionar propiedades para la instancia de extensión.

Ejemplo

{
  "verb": "createSPList",
  "listName": "CustomList",
  "templateType": 100,
  "subactions": [
      {
        "verb": "setDescription",
        "description": "Custom list to illustrate SharePoint site scripting"
      },
      {
        "verb": "addSPField",
        "fieldType": "Text",
        "displayName": "Text Field",
        "isRequired": false,
        "addToDefaultView": true
      },
      {
        "verb": "addSPField",
        "fieldType": "Number",
        "displayName": "Number Field",
        "internalName": "ElectricSlide",
        "addToDefaultView": true,
        "isRequired": true
      },
      {
        "verb": "associateListViewCommandSet",
        "title": "HelloWorld",
        "location": "ClientSideExtension.ListViewCommandSet.CommandBar",
        "clientSideComponentId": "13234283-d6c2-408f-a9ef-31a920c8ae78",
        "clientSideComponentProperties": "{\"sampleText\":\"added by a site template\"}"
      }
  ]
}

setTitle

Cambia el nombre de la lista. Para crear una nueva lista con un nombre específico, en lugar de usar setTitle use el listName parámetro en laCreateSPList acción.

Nota:

Si se usa setTitle, se cambiará el nombre de la lista, lo que impedirá que la lista se actualice si se vuelve a aplicar la plantilla de sitio.

Valor JSON

  • title: el título de la nueva lista.

Ejemplo

{
  "verb": "setTitle",
  "title": "Customers and Orders"
}

Definir una nueva columna de sitio

Use el verbo createSiteColumn para definir una nueva columna de sitio que luego se puede asociar a una lista directamente o mediante la acción addContentType.

Valor JSON

  • fieldType: el tipo de columna para agregar. Los valores admitidos (como SPField) son Text, Note, Number, Boolean, User y DateTime. Para otros tipos de datos, vea la acción del script addSPFieldXml.
  • internalName: el nombre interno de la columna del sitio.
  • displayName : el nombre de la columna del sitio.
  • isRequired: Verdaderosi este campo es necesario para contener información; de lo contrario, Falso.
  • id: un atributo opcional. Si se proporciona, especifica el Id. del campo. Debe ser un GUID único, generado al azar. Se recomienda dar un valor a esto para asegurar que el campo no se agregue varias veces si se vuelve a ejecutar el guión.
  • group: un atributo opcional para designar el grupo de columnas.
  • enforceUnique: un atributo opcional que por defecto esFalso. Si esVerdadero, todos los valores de este campo deben ser únicos.

Ejemplo

{
  "verb": "createSiteColumn",
  "fieldType": "User",
  "internalName": "siteColumn4User",
  "displayName": "Project Owner",
  "isRequired": false,
  "id": "181c4370-cdae-471b-9499-730046e55b75"
}

Use el verbo createSiteColumnXml para definir unapara definir una nueva columna de sitio para aquellos tipos de datos complejos no compatibles con createSiteColumn. Estas columnas pueden asociarse a una lista directamente o mediante la acción addContentType. Es importante proporcionar el atributo de Id. en el esquema de campoXml para evitar que el campo se cree varias veces si el guión se ejecuta más de una vez.

Valor JSON

  • schemaXml: el bloque CAML para definir el campo.
  • pushChanges: indica si este cambio debe ser insertado a las listas que ya hacen referencia a este campo. Valores predeterminados en Verdadero.

Ejemplo

{
  "verb": "createSiteColumnXml",
  "schemaXml": "<Field ID=\"{82581bd1-356f-4206-8ff7-a3b6ad1f5553}\" Type=\"Choice\" DisplayName=\"Project Status\" Required=\"FALSE\" Format=\"Dropdown\" StaticName=\"ProjectStatus\" Name=\"ProjectStatus\"><Default>In Progress</Default><CHOICES><CHOICE>In Progress</CHOICE><CHOICE>In Review</CHOICE><CHOICE>Done</CHOICE><CHOICE>Has Issues</CHOICE></CHOICES></Field>"
}

Definir un nuevo tipo de contenido

Use createContentType para definir un nuevo tipo de contenido que luego puede asociarse a una lista con la acción addContentType.

Valor JSON

Nota:

Al hacer referencia al identificador de tipo de contenido, solo se requiere una de las tres referencias: ID, parentName o parentId.

  • name: el nombre del tipo de contenido a crear.
  • description: la descripción opcional del tipo de contenido.
  • parentName: nombre del tipo de contenido parental.
  • parentId: Id. del tipo de contenido parental.
  • id: Id. del tipo de contenido.
  • hidden: especifica si el tipo de contenido es visible u oculto.
  • group: grupo del tipo de contenido.
  • subactions: especifica las sub acciones que se ejecutarán en el tipo de contenido. Se utilizan para designar las columnas de sitio que se agregan.

Ejemplo

{
  "verb": "createContentType",
  "name": "Contoso Projects",
  "description": "custom list content type",
  "parentName": "Item",
  "hidden": false,
  "group": "Contoso",
  "subactions":
    [
      {
        "verb": "addSiteColumn",
        "internalName": "siteColumn1Text"
      },
      {
        "verb": "addSiteColumn",
        "internalName": "siteColumn2Number"
        },
      {
        "verb": "addSiteColumn",
        "internalName": "siteColumn3Note"
      }
    ]
}

addSiteColumn

Subacción que agrega una columna de sitio previamente definida directamente a un tipo de contenido (existente o creado mediante el script de sitio).

Valor JSON

  • internalName: el nombre interno de la columna del sitio para agregar.

Ejemplo

 {
  "verb": "addSiteColumn",
  "internalName": "siteColumnUser"
 }

removeSiteColumn

Subacción que quita una columna de sitio de un tipo de contenido o de lista.

Valor JSON

  • internalName: el nombre interno de la columna del sitio a eliminar.

Ejemplo

 {
  "verb": "removeSiteColumn",
  "internalName": "siteColumnUser"
 }

Use el verbo addNavLink para agregar un nuevo vínculo de navegación al sitio QuickLaunch o a la navegación de Hub.

Valores JSON

  • url: la URL del vínculo que se va a agregar.
  • displayName: el nombre para mostrar del enlace.
  • navComponent: el componente en donde se agrega el enlace, QuickLaunch, Hub, o Footer. El valor predeterminado es Inicio rápido.
  • isWebRelative: Verdaderosi el enlace es relativo a la web; de lo contrario, False. El valor predeterminado es Falso.
  • parentDisplayName: un parámetro opcional. Si se proporciona, convierte este vínculo de navegación en un elemento secundario (vínculo secundario) del vínculo de navegación con este displayName. Si se proporciona este y parentUrl, se busca un vínculo que coincida con ambos para que sea el principal.
  • parentUrl: un parámetro opcional. Si se proporciona, convierte este vínculo de navegación en un elemento secundario (vínculo secundario) del vínculo de navegación con esta URL. Si se proporciona este y parentDisplayName, se busca un vínculo que coincida con ambos para que sea el principal.
  • isParentUrlWebRelative: un parámetro opcional. Verdadero si el enlace es relativo a la web; de lo contrarioFalso. El valor predeterminado es False.

Ejemplo

Nota:

Si agrega un vínculo a un elemento de sitio anidado, como una lista, asegúrese de agregar la referencia a la ruta de acceso desde la raíz.

{
  "verb": "addNavLink",
  "url": "/Customer Event Collateral",
  "displayName": "Event Collateral",
  "navComponent":"Hub",
  "isWebRelative": true
},
{
    "verb": "addNavLink",
    "url": "/Lists/Project Activities",
    "displayName": "Project Activities",
    "isWebRelative": true
    },
{
  "verb": "addNavLink",
  "url": "https://learn.microsoft.com/sharepoint/dev/declarative-customization/site-design-overview",
  "displayName": "SharePoint Site Design Overview",
  "parentDisplayName": "Documents"
},
{
  "verb": "addNavLink",
  "url": "https://learn.microsoft.com/sharepoint/dev/declarative-customization/site-design-json-schema#add-a-navigation-link",
  "displayName": "About Site Footer",
  "navComponent":"Footer"
},
{
  "verb": "addNavLink",
  "url": "",
  "displayName": "Linkless Heading",
  "isWebRelative": false
}

Use el verbo removeNavLinkpara eliminar un enlace de navegación del sitio.

Valores JSON

  • url: la URL del enlace a eliminar.
  • displayName: el nombre para mostrar del enlace.
  • navComponent: el componente del que se elimina el enlace, QuickLaunch, Hub o Footer. El valor predeterminado es Inicio rápido.
  • isWebRelative: Verdaderosi el enlace es relativo a la web; de lo contrario, False.

Ejemplo

Nota:

Esta acción puede usarse para eliminar los vínculos a sitios que agregaron las plantillas de sitio de colaboración y comunicación (por ejemplo, "inicio", "documentos", "páginas", "conversaciones", etc.).

{
  "verb": "removeNavLink",
  "displayName": "Home",
  "isWebRelative": true
},
{
  "verb": "removeNavLink",
  "displayName": "Pages",
  "isWebRelative": true
},
{
  "verb": "removeNavLink",
  "displayName": "Conversations",
  "isWebRelative": true
},
{
  "verb": "removeNavLink",
  "url": "/_layouts/15/groupstatus.aspx?Target=TEAM",
  "displayName": "Teams",
  "isWebRelative": true
}

Manejo de caracteres especiales

Los sitios creados en otros idiomas distintos al inglés pueden contener caracteres especiales. Usar codificación UTF-8 para leer el contenido JSON que contiene caracteres especiales.

Get-Content '<Folder_location_to_site_script>\site-script.json' -Raw -Encoding UTF8

Aplicar un tema

Use el verbo applyTheme para agregar un tema personalizado al sitio. Para más información sobre cómo crear y cargar estos temas, consulteTemática del sitio de SharePoint. Esta acción del sitio sólo funciona para aplicar temas personalizados; para aplicar uno de nuestros temas de SharePoint en producto, cree una copia como uno personalizado y haga referencia a el mismo.

Nota:

Esta acción se bloquea automáticamente para los sitios de canal.

Valor JSON

  • themeName: el nombre del tema a aplicar.

Ejemplo

{
  "verb": "applyTheme",
  "themeName": "Blue Yonder"
}

Establecer propiedades de personalización de marca

Use el verbo setSiteBranding para especificar la diseño de la navegación, la diseño del encabezado y el fondo del encabezado.

Nota:

Establecer el diseño de navegación solo funciona en la plantilla de sitio de comunicación y para la navegación de central. Esta acción se bloquea automáticamente para los sitios de canal.

Valor JSON

  • navigationLayout: especifica el diseño de navegación como Cascada o Megamenú
  • headerLayout: especifica el diseño del encabezado como Estándar o Compacto
  • headerBackground: especifica el fondo de la cabecera como Ninguno, Neutral, Suave o Fuerte
  • showFooter: especifica si el pie de página del sitio se debe mostrar o no

Ejemplo

{
  "verb": "setSiteBranding",
  "navigationLayout": "Megamenu",
  "headerLayout": "Compact",
  "headerBackground": "Strong",
  "showFooter": true
}

Use el verbo setSiteLogopara especificar un logo para su sitio.

Nota:

Esta acción solo funciona en la plantilla de sitio de comunicación (68).

Valor JSON

  • url: la URL de la imagen del logo a utilizar.

Ejemplo

{
  "verb": "setSiteLogo",
  "url": "/Customer Event Collateral/logo.jpg"
}

Unirse a un sitio central

Nota:

Esta acción se bloquea automáticamente para los sitios de canal.

Use el verbo joinHubSitepara unir el sitio a un sitio central designado.

Valor JSON

  • hubSiteId : la identificación del sitio del centro para ingresar.
  • name: una cadena opcional que especifica el nombre del sitio del centro.

Ejemplo

Nota:

Para obtener el hubSiteId, inicie sesión en un sitio mediante el cmdlet Connect-PnPOnline y, a continuación, ejecute:

$hubSiteName = "My Hub Site"
Get-PnPHubSite | Where-Object { $_.Title -eq $hubSiteName }

Esto devuelve información sobre el sitio de Hub llamado $hubSiteName. El hubSiteId es devuelto como el SiteId.

{
  "verb": "joinHubSite",
  "hubSiteId": "e337cc17-b355-45d2-8dd4-e056f1bcf6f6"
}

Instalar un complemento o una solución

Use la acción installSolution para instalar un complemento desplegado o una solución SharePoint Framework del Catálogo de aplicaciones del inquilo.

Ejemplo

Nota:

Para obtener el identificador de la solución, inicie sesión en un sitio con el cmdlet Connect-PnPOnline y luego ejecute Get-PnPApp. Devuelve una lista de las soluciones implementadas. En el caso de espacios empresariales multigeográficos, use el id. de producto después de configurar la solución en cada ubicación geográfica. Para obtener el id. de producto, cargue la solución al catálogo de aplicaciones o en la definición de la solución.

{
  "verb": "installSolution",
  "id": "d40e4edc-a6da-4cd8-b82d-bba970976803"
}

Registrar una extensión

Use la acción associateExtension para registrar una extensión implementada del SharePoint Framework desde el Catálogo de aplicaciones del arrendatario.

Nota:

Para más detalles sobre cómo crear y configurar una extensión de SharePoint Framework, vea Información general de SharePoint Framework Extensions.

Valores JSON

  • title: el título de la extensión en el Catálogo de aplicaciones.
  • location: se utiliza para especificar el tipo de extensión. Si se usa para crear comandos, donde se mostraría el comando; De lo contrario, debe establecerse en ClientSideExtension.ApplicationCustomizer.
  • clientSideComponentId: el identificador (GUID) de la extensión en el catálogo de aplicaciones. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.
  • clientSideComponentProperties: un parámetro opcional, que puede ser usado para proporcionar propiedades para la instancia de extensión.
  • registrationId: un parámetro opcional que indica el tipo de la lista a la que se asocia la extensión (si es una extensión de la lista).
  • registrationType: un parámetro opcional, que debe ser especificado si la extensión está asociada a una lista.
  • scope: indica si la extensión está asociada a un Web o a un Site.

Ejemplo

{
  "verb": "associateExtension",
  "title": "SPFXApplicationCustomizer Example",
  "location": "ClientSideExtension.ApplicationCustomizer",
  "clientSideComponentId": "40d64749-a6e5-4691-b440-1e32fb6sean5",
  "scope": "Web"
}

Activar un característica

Use la acción activateSPFeature para activar una característica de SharePoint.

Valores JSON

  • featureId: la Id. de la característica para activar (GUID).
  • scope: indica si la característica está asociada a un web o a un site.

Ejemplo

Para habilitar la característica de ámbito de web que permite crear listas de eventos (Id. de la característica 00bfea71-ec85-4903-972d-ebe475780106):

{
  "verb": "activateSPFeature",
  "featureId": "00bfea71-ec85-4903-972d-ebe475780106",
  "scope": "web"
}

Desencadenar un flujo

Use el verbo triggerFlow para iniciar un flujo personalizado.

Sugerencia

El artículo Llamar a Power Automate desde un script del sitio proporciona un ejemplo completo.

Valores JSON

  • url: un URL desencadenante del flujo.
  • name: el nombre del flujo.
  • parameters: un conjunto opcional de parámetros para pasar al flujo.

Ejemplo

 {
  "verb": "triggerFlow",
  "url": "<A trigger URL of the Flow.>",
  "name": "Record and tweet site creation event",
  "parameters": {
    "event": "Microsoft Event",
    "product": "SharePoint"
  }
}

Cambiar la configuración regional

Nota:

Esta acción se bloquea automáticamente para los sitios de canal.

Utilice la acciónsetRegionalSettings para configurar los ajustes regionales del sitio (/_layouts/15/regionalsetng.aspx).

Valores JSON

  • timeZone: un número que especifica la zona horaria. Para una lista de valores permitidos, consulteSPRegsionalSettings.TimeZones
  • locale: un número que especifica la cultura LCID. Para una lista de valores permitidos, consulte Microsoft Locale ID Values
  • sortOrder: un número que especifica el orden de clasificación. Para una lista de valores permitidos, consulte SPRegionalSettings.Collation
  • hourFormat: especifica si el sitio debe usar el formato de tiempo de 12 o 24 horas.

Ejemplo

{
  "verb": "setRegionalSettings",
  "timeZone": 2, /* Greenwich Mean Time */
  "locale": 1050, /* Croatia */
  "sortOrder": 6, /* Croatian */
  "hourFormat": "24"
}

Agregar usuarios (entidades de seguridad) a los grupos de SharePoint

Nota:

Esta acción se bloquea automáticamente para los sitios de canal.

Utilice la acciónaddPrincipalToSPGrouppara administrar la adición de usuarios y grupos para seleccionar los grupos de SharePoint predeterminados. Para obtener más información, vea Información sobre los grupos de SharePoint. Esta acción puede usarse para los usuarios con licencia, los grupos de seguridad y los grupos de Microsoft 365.

Valores JSON

  • principal: un parámetro necesario para especificar el nombre de la entidad principal (usuario o grupo) que se agregará al grupo de SharePoint.
  • group: un parámetro necesario para especificar el grupo de SharePoint al que agregar el principal.

Ejemplo

Nota:

Actualmente, esta acción solo admite los grupos Visitantes (nivel de permiso: lectura), Miembros (nivel de permiso: contribución o edición, según cuál sea la plantilla de sitio) y Propietarios (nivel de permiso: control total). Las entidades de seguridad deben agregarse de forma individual.

{
  "verb": "addPrincipalToSPGroup",
  "principal": "sean@contosotravel.onmicrosoft.com", /* user */
  "group": "Owners"
},
{
  "verb": "addPrincipalToSPGroup",
  "principal": "travelops", /* sg */
  "group": "Owners"
},
{
  "verb": "addPrincipalToSPGroup",
  "principal": "itexecutives", /* mail-enabled sg */
  "group": "Members"
},
{
  "verb": "addPrincipalToSPGroup",
  "principal": "Adventure@contosotravel.onmicrosoft.com", /* o365 group */
  "group": "Visitors"
}

Administración del acceso de invitado

Nota:

Esta acción se bloquea automáticamente para los sitios de canal.

Use la acción setSiteExternalSharingCapability para administrar el acceso de invitados. Para más información, vea Administrar el uso compartido externo en su entorno de SharePoint Online

Valores JSON

  • capability: un parámetro necesario para especificar la opción de compartir la colección de sitios. Las cuatro opciones son: Disabled, ExistingExternalUserSharingOnly, ExternalUserSharingOnly, yExternalUserAndGuestSharing

Ejemplo

{
  "verb": "setSiteExternalSharingCapability",
  "capability": "Disabled"
}

Vea también