Esquema JSON de diseño de sitioSite design JSON schema

El diseño de sitio es una lista de acciones.The site design is a list of actions. Para ver acciones más complejas, como crear una lista, también hay disponibles subacciones.For more complex actions, such as creating a list, there are also subactions. Cada acción se especifica con un valor "verb".Each action is specified by a "verb" value. Las acciones de verbo se ejecutan en el orden en que aparecen en el script JSON.Verb actions are run in the order they appear in the JSON script. 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.Only the verb actions listed here can be used; otherwise, an "unable to handle action" error will be thrown when trying to upload a site script. Con el tiempo, se agregarán más acciones.More actions will be added over time.

La estructura JSON general se especifica de esta forma:The overall JSON structure is specified as follows:

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

Puede ver y hacer referencia al último esquema aquí: https://developer.microsoft.com/json-schemas/sp/site-design-script-actions.schema.jsonYou can view - and reference - the latest schema here: https://developer.microsoft.com/json-schemas/sp/site-design-script-actions.schema.json

Aplicar diseños de sitio varias vecesApplying site designs multiple times

Las acciones se pueden ejecutar más de una vez en un sitio.Actions can be runned more than once on a site. Al volver a ejecutar acciones en el mismo sitio con los mismos parámetros, se actualiza el esquema existente y no se duplica.Rerunning actions on the same site with the same parameters will result in an update to the existing schema and not duplication of schema.

Crear una nueva lista de SharePointCreate a new SharePoint list

Use el verbo createSPList para crear una lista de SharePoint.Use the createSPList verb to create a new SharePoint list.

Nota

Una vez que se aplica createSPList en un sitio, la ejecución de createSPList con el mismo nombre de lista actúa como una actualización de la lista existente.Once createSPList is applied on a site, runnning the createSPList with the same list name will act as an update to the existing list.

Valores JSONJSON values

  • listName – El nombre de la lista.listName – The name of the list.

  • templateType – La plantilla que se aplicará a la lista.templateType – Which template to apply to the list. Normalmente, usaría un valor de 100.Typically you would use value 100. La lista completa de los valores de tipo de plantilla se encuentran en Enumeración de SPListTemplateType, pero los que son compatibles actualmente incluyen:The full list of template type values are documented in SPListTemplateType enumeration - but the ones we currently support include:

    Nombre de plantilla de listaList Template Name EnumEnum
    Lista genéricaGeneric List 100100%
    Biblioteca de documentosDocument Library 10110.1
    EncuestaSurvey 10210.2
    VínculosLinks 10310.3
    AnunciosAnnouncements 10410.4
    ContactosContacts 10510.5
    EventosEvents 10610.6
    TareasTasks 10710.7
    Panel de discusiónDiscussion Board 10810.8
    PictureLibraryPictureLibrary 10910.9
    Páginas del sitioSite Pages 119119
    Seguimiento de problemasIssue Tracking 11001100

    Puede modificar la biblioteca creada con la plantilla si usa 101 o 119 y hacer referencia a los nombres predeterminados ("Documentos" o "Páginas de sitio").If you use 101 or 119 and reference the default names ("Documents" or "Site Pages") you can modify the library created with the template. Vea el ejemplo abajo.See example below.

  • subacciones – Una matriz de acciones que se ejecutan en el orden indicado para crear la lista.subactions – An array of actions that run in the order listed to create your list.

EjemploExample

{
    "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.The subactions array provides additional actions to specify how to construct the list. Las subacciones también se especifican con un valor de verbo.Subactions are also specified using a verb value.

setTitlesetTitle

Establece un título que identifica la lista en las vistas.Sets a title which identifies the list in views.

Valor JSONJSON value

  • title: título de la nueva lista.title – The title of the new list.

EjemploExample

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

setDescriptionsetDescription

Establece la descripción de la lista.Sets the description of the list.

Valor JSONJSON value

  • description: descripción de la nueva lista.description – The description of the new list.

EjemploExample

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

addSPFieldaddSPField

Agrega un nuevo campo.Adds a new field.

Valores JSONJSON values

  • fieldType: –tipo de campo se puede establecer en Text, Note, Number, Boolean, User o DateTime.fieldType – The field type can be set to Text, Note, Number, Boolean, User, or DateTime. Para otros tipos de datos, vea la acción addSPFieldXml.For other data types, see the addSPFieldXml action.
  • displayName: nombre para mostrar del campo.displayName – The display name of the field.
  • internalName: atributo opcional.internalName – An optional attribute. Si se indica, especifica el nombre interno del campo.If provided, specifies the internal name of the field. Si no, el nombre interno se basa en el nombre para mostrar.If not provided, the internal name is based on the display name.
  • isRequired: –es True si el campo tiene que contener información; en caso contrario, es false.isRequiredTrue if this field is required to contain information; otherwise, false.
  • addToDefaultView: –es True si el campo se agregará a la vista predeterminada; en caso contrario, es false.addToDefaultViewTrue if the field will be added to the default view; otherwise, false.
  • enforceUnique–: atributo opcional cuyo valor predeterminado es false.enforceUnique – An optional attribute that defaults to false. Si es true, todos los valores de este campo deben ser únicos.If true, all values for this field must be unique.

EjemploExample

{
   "verb": "addSPField",
   "fieldType": "Text",
   "displayName": "Customer Name",
   "isRequired": false,
   "addToDefaultView": true
}

deleteSPFielddeleteSPField

Elimina un campo predeterminado especificado por el tipo de plantilla seleccionado.Deletes a default field that was provided by the selected template type.

Valor JSONJSON value

  • displayName: nombre para mostrar que identifica el campo que se va a eliminar.displayName – The display name to identify the field to delete.

EjemploExample

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

addSPFieldXmladdSPFieldXml

Permite definir los campos y los elementos con Lenguaje de marcado de aplicaciones de colaboración (CAML).Enables defining fields and their elements using Collaborative Application Markup Language (CAML). Como referencia, vea Elemento Field (Campo).For reference, see Field element (Field).

Actualmente estas creaciones de campo no pueden designarse como columnas de sitio ni agregarse a tipos de contenido.Currently these field constructs cannot be designated as site columns nor added to content types. Para crear columnas de sitio con Field XML use la acción createSiteColumnXml.To create site columns with Field XML use the createSiteColumnXml action.

Valor JSONJSON value

  • schemaXml: bloque de CAML que define el campo.schemaXml – The CAML block to define the field.
  • addToDefaultView: –es True si el campo se agregará a la vista predeterminada; en caso contrario, es false.addToDefaultViewTrue if the field will be added to the default view; otherwise, false.

EjemploExample

{
    "verb": "addSPFieldXml",
    "schemaXml": "<Field 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>"
}

addSPLookupFieldXmladdSPLookupFieldXml

Permite definir los campos de búsqueda y su elemento de listas dependiente con el Lenguaje de marcado de aplicaciones de colaboración (CAML).Enables defining lookup fields and their dependent lists element using Collaborative Application Markup Language (CAML). Como referencia, vea Elemento Field (Campo).For reference, see Field element (Field).

Valor JSONJSON value

  • schemaXml – El bloque de CAML que define el campo.schemaXml – The CAML block to define the field.
  • targetListName – El nombre que identifica la lista a la que hace referencia este campo de búsqueda.targetListName – The name that identifies the list this lookup field is referencing. Proporcionar este o targetListUrl.Provide either this or targetListUrl.
  • targetListUrl – Una URL relativa a la web que identifica la lista a la que hace referencia este campo de búsqueda.targetListUrl – A web-relative URL that identifies the list this lookup field is referencing. Proporcionar este o targetListName.Provide either this or targetListName.
  • addToDefaultView – es true si el campo se agregará a la vista predeterminada; en caso contrario, es false.addToDefaultViewTrue if the field will be added to the default view; otherwise, false.

EjemploExample

{
  "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"
}

addSiteColumnaddSiteColumn

Subacción que agrega una columna de sitio previamente definida directamente a una lista (existente o creada mediante el script de sitio).Subaction to add a previously defined site column directly to a list (existing or created through the site script).

Valor JSONJSON value

  • internalName: nombre interno de la columna de sitio que se agrega.internalName – The internal name of the site column to add.
  • addToDefaultView: atributo opcional cuyo valor predeterminado es false.addToDefaultView – Optional attribute that defaults to false. Si es true, el campo recién agregado también se agregará a la vista predeterminada.If true, the newly added field will also be added to the default view.

EjemploExample

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

addSPViewaddSPView

Define y agrega una vista a la lista.Defines and adds a view to the list. 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).Use this action to specify the desired columns and how you want the list items displayed (using a CAML query). 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.Action properties allow you to specify row limits, and whether the view is paged and recurses over items in nested folders. También puede designar la vista creada como predeterminada.You can also designate your constructed view as the default.

Valor JSONJSON value

EjemploExample

{
    "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
}

removeSPViewremoveSPView

Quita una vista de una lista.Removes a view from a list. Esta acción también puede usarse para quitar una vista que la plantilla de sitio ha aplicado.This action can also be used to remove a view applied by the site template.

Valor JSONJSON value

  • name: nombre de la vista que se quita.name – The name of the view to remove.

EjemploExample

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

addContentTypeaddContentType

Agrega un tipo de contenido a la lista.Adds a content type to the list. 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.Currently these are limited to the default content types included in the site template or ones defined in a script by using the createContentType action.

Nota

En este momento no se pueden agregar tipos de contenido empresarial.Currently we do not support adding enterprise content types.

Valor JSONJSON value

  • name: nombre del tipo de contenido que se agrega.name – The name of the content type to add.

EjemploExample

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

removeContentTyperemoveContentType

Quita un tipo de contenido que se especificó con el tipo de plantilla seleccionado.Removes a content type that was provided by the selected template type.

Valor JSONJSON value

  • name: nombre del tipo de contenido que se quita.name – The name of the content type to remove.

EjemploExample

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

setSPFieldCustomFormattersetSPFieldCustomFormatter

Establece el formato de columna de un campo.Sets column formatting for a field. Para más información, vea Usar el formato de columna para personalizar SharePoint.For more information, see Use column formatting to customize SharePoint.

Valores JSONJSON values

  • fieldDisplayName: nombre para mostrar del campo en que se opera.fieldDisplayName – The display name of the field to operate on.
  • formatterJSON: objeto JSON que se usará como campo CustomFormatter.formatterJSON – A JSON object to use as the field CustomFormatter.

EjemploExample

En este ejemplo se da formato de barra de datos a una columna de números.In this example, we are formatting a number column as a data bar.

                {
                    "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
                                                        ]
                                                    }
                                                ]
                                            },
                                            "%"
                                        ]
                                    }
                                ]
                            }
                        }
                    }
                }

associateFieldCustomizerassociateFieldCustomizer

Registra la extensión de campo para un campo de lista.Registers field extension for a list field. Para obtener más información sobre estas extensiones del lado cliente, vea el tutorial Crear un personalizador de campo.For more information on these client-side extensions, see Build field customizer tutorial.

Valores JSONJSON values

  • internalName: nombre interno del campo en el que se opera.internalName – The internal name of the field to operate on.
  • clientSiteComponentId: identificador (GUID) de la extensión en el catálogo de aplicaciones.clientSiteComponentId – The identifier (GUID) of the extension in the app catalog. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.This property value can be found in the manifest.json file or in the elements.xml file.
  • clientSiteComponentProperties: – parámetro opcional que se puede usar para especificar propiedades para la instancia de la extensión del personalizador de campo.clientSiteComponentProperties – An optional parameter, which can be used to provide properties for the field customizer extension instance.

EjemploExample

{
    "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 design, what?\"}"
        }
    ]
}

associateListViewCommandSetassociateListViewCommandSet

Asocia un ListViewCommandSet a la listaAssociates a ListViewCommandSet to the list

Valores JSONJSON values

  • title: – título de la extensión.title – The title of the extension.
  • location: – parámetro necesario para especificar dónde se muestra el comando.location – A required parameter to specify where the command is displayed. Las opciones son “ContextMenu” o “CommandBar”.Options are: ContextMenu or CommandBar.
  • clientSideComponentId: identificador (GUID) de la extensión en el catálogo de aplicaciones.clientSideComponentId – The identifier (GUID) of the extension in the app catalog. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.This property value can be found in the manifest.json file or in the elements.xml file.
  • clientSideComponentProperties: parámetro opcional que se puede usar para especificar propiedades para la instancia de la extensión.clientSideComponentProperties – An optional parameter, which can be used to provide properties for the extension instance.

EjemploExample

{
    "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": "CommandBar"
            "clientSideComponentId": "13234283-d6c2-408f-a9ef-31a920c8ae78",
            "clientSideComponentProperties": "{\"sampleText\":\"added by a site design\"}"
        }
    ]
}

Definir una nueva columna de sitioDefine a new site column

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.Use the createSiteColumn verb to define a new site column that can then be associated to a list directly or by using the addContentType action.

Valor JSONJSON value

  • fieldType: tipo de columna que se agrega.fieldType – The type of column to add. Los valores admitidos (como SPField) son Text, Note, Number, Boolean, User y DateTime.Supported values - like SPField - are Text, Note, Number, Boolean, User, and DateTime. Para otros tipos de datos, vea la acción del script addSPFieldXml.For other data types, refer to the addSPFieldXml script action.
  • internalName: nombre interno de la columna de sitio.internalName – The internal name of the site column.
  • displayName: nombre para mostrar de la columna de sitio.displayName – The display name of the site column.
  • isRequired: –es True si el campo tiene que contener información; en caso contrario, es false.isRequiredTrue if this field is required to contain information; otherwise, false.
  • group: atributo opcional que designa el grupo de columnas.group – An optional attribute to designate the column group.
  • enforceUnique–: atributo opcional cuyo valor predeterminado es false.enforceUnique – An optional attribute that defaults to false. Si es true, todos los valores de este campo deben ser únicos.If true, all values for this field must be unique.

EjemploExample

{
    "verb": "createSiteColumn",
    "fieldType": "User",
    "internalName": "siteColumn4User",
    "displayName": "Project Owner",
    "isRequired": false
}

Use el verbo createSiteColumnXml para definir una nueva columna de sitio para estos tipos de datos complejos no compatibles con createSiteColumn.Use the createSiteColumnXml verb to define a new site column for those complex data types not supported by createSiteColumn. Estas columnas pueden asociarse a una lista directamente o mediante la acción addContentType.These columns can then be associated to a list directly or by using the addContentType action.

Valor JSONJSON value

  • schemaXml – El bloque de CAML que define el campo.schemaXml – The CAML block to define the field.
  • pushChanges – indica si este cambio debe enviarse a las listas que ya hacen referencia a este campo.pushChanges – Indicates whether this change should be pushed to lists that already reference this field. Valores predeterminados en true.Defaults to true.

EjemploExample

{
    "verb": "createSiteColumnXml",
    "schemaXml": "<Field 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 contenidoDefine a new content type

Use createContentType para definir un nuevo tipo de contenido que luego puede asociarse a una lista con la acción addContentType.Use createContentType to define a new content type that can then be associated to a list by using the addContentType action.

Valor JSONJSON value

Nota

Al hacer referencia al identificador de tipo de contenido, solo se requiere una de las tres referencias: ID, parentName o parentId.When referencing the content type ID, only one of the three references are required - ID, parentName, or parentId.

  • name: nombre del tipo de contenido que se crea.name – The name of the content type to create.
  • description: descripción opcional del tipo de contenido.description – The optional description of the content type.
  • parentName: nombre del tipo de contenido primario.parentName – Name of the parent content type.
  • parentId: identificador del tipo de contenido primario.parentId – ID of the parent content type.
  • id: identificador del tipo de contenido.id – ID of the content type.
  • hidden: especifica si el tipo de contenido está visible u oculto.hidden – Specifies whether the content type is visible or hidden.
  • subactions: especifica subacciones que se ejecutan en el tipo de contenido.subactions – Specifies subactions to run on the content type. Se utilizan para designar las columnas de sitio que se agregan.These are used to designate the site columns to add.

EjemploExample

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

addSiteColumnaddSiteColumn

Subacción que agrega una columna de sitio previamente definida directamente a un tipo de contenido (existente o creado mediante el script de sitio).Subaction to add a previously defined site column directly to a content type (existing or created through the site script).

Valor JSONJSON value

  • internalName: nombre interno de la columna de sitio que se agrega.internalName – The internal name of the site column to add.

EjemploExample

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

removeSiteColumnremoveSiteColumn

Subacción que quita una columna de sitio de un tipo de contenido o de lista.Subaction to remove a site column from a list or content type.

Valor JSONJSON value

  • internalName: nombre interno de la columna de sitio que se quita.internalName – The internal name of the site column to remove.

EjemploExample

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

Use el verbo addNavLink para agregar un vínculo de navegación nuevo a la navegación central o QuickLaunch del sitio.Use the addNavLink verb to add a new navigation link to the site.

Valores JSONJSON values

  • url:dirección URL del vínculo que se agrega.url – The url of the link to add.
  • displayName: nombre para mostrar del vínculo.displayName – The display name of the link.
  • navComponent – El componente donde agregar el enlace, QuickLaunch o sitio central.navComponent – The component where to add the link, QuickLaunch or Hub. El valor predeterminado es QuickLaunch.The default value is ****.
  • isWebRelativetrue si el vínculo es relativo a la web; en caso contrario, es false.isWebRelativetrue if the link is web relative; otherwise, false. El valor predeterminado es false.The default is false.
  • parentDisplayName – Un parámetro opcional.parentDisplayName – An optional parameter. 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.If provided, it makes this navigation link a child (sub link) of the navigation link with this displayName. Si se proporciona este y parentUrl, se busca un vínculo que coincida con ambos para que sea el principal.If both this and parentUrl are provided, it searches for a link that matches both to be the parent.
  • parentUrl – Un parámetro opcional.parentUrl – An optional parameter. 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.If provided, it makes this navigation link a child (sub link) of the navigation link with this url. Si se proporciona este y parentDisplayName, se busca un vínculo que coincida con ambos para que sea el principal.If both this and parentDisplayName are provided, it searches for a link that matches both to be the parent.
  • isParentUrlWebRelative – Un parámetro opcional.isParentUrlWebRelative – An optional parameter. Es true si el vínculo es relativo a la web; en caso contrario, es false.true if the link is web relative; otherwise, false. El valor predeterminado es false.The default is false.

EjemploExample

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.If you add a link to a nested site item such as a list, be sure to add the path reference from the root.

{
   "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://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/site-design-overview",
    "displayName": "SharePoint Site Design Overview",
    "parentDisplayName": "Documents"
 }

Use el verbo removeNavLink para eliminar un vínculo de navegación del sitio.Use the removeNavLink verb to remove a navigation link from the site.

Valores JSONJSON values

  • url – La dirección URL del vínculo que se quita.url – The url of the link to remove.
  • displayName: nombre para mostrar del vínculo.displayName – The display name of the link.
  • navComponent – El componente donde quitar el enlace, QuickLaunch o sitio central.navComponent – The component where to remove the link from, QuickLaunch or Hub. El valor predeterminado es QuickLaunch.The default value is ****.
  • isWebRelative:– es True si el vínculo es relativo a la web; en caso contrario, es false.isWebRelativeTrue if the link is web relative; otherwise, false.

EjemploExample

Nota

Esta acción puede usarse para eliminar los vínculos a sitios agregados por las plantillas de sitio de colaboración y comunicación (por ejemplo, "inicio", "documentos", "páginas", "conversaciones", etc.).This action can be used to remove site links added by the collaboration and communication site templates (for example, "home", "documents", "pages", "conversations", 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 Handle special characters

Los sitios creados en otros idiomas distintos al inglés pueden contener caracteres especiales. The sites created in other languages than English may contain special characters. Usar codificación UTF-8 para leer el contenido JSON que contiene caracteres especiales.Use UTF-8 encoding to read the JSON content containing special characters.

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

Aplicar un temaApply a theme

Use el verbo applyTheme para agregar un tema personalizado al sitio.Use the applyTheme verb to add a custom theme to the site. Para más información sobre cómo crear y cargar estos temas, vea Creación de temas de sitio de SharePoint.For more information about how to construct and upload these themes, see SharePoint site theming. Tenga en cuenta que esta acción del sitio solo funciona para aplicar temas personalizados. Para aplicar uno de los temas del producto SharePoint, cree una copia como uno personalizado y haga referencia a él.Note that this site action only works for applying custom themes; to apply one of our in-product SharePoint themes, create a copy as a custom one and reference that one.

Valor JSONJSON value

  • themeName: nombre del tema que se aplica.themeName – The name of the theme to apply.

EjemploExample

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

Establecer propiedades de personalización de marcaSet branding properties

Use el verbo setSiteBranding para especificar el diseño de navegación, el diseño del encabezado y el fondo del encabezado.Use the setSiteBranding verb to specify the navigation layout, the header layout and header background.

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.Setting the navigation layout only works on the communication site template and for the hub navigation.

Valor JSONJSON value

  • navigationLayout – Especifica el diseño de navegación como Cascada o MegamenúnavigationLayout – Specify the navigation layout as Cascade or Megamenu
  • navigationLayout – Especifica el diseño de navegación como Estándar o CompactoheaderLayout – Specify the header layout as Standard or Compact
  • headerBackground – Especifica el fondo de encabezado como Ninguno, Neutro, Suave o FuerteheaderBackground – Specify the header background as None, Neutral, Soft or Stong

EjemploExample

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

Use el verbo setSiteLogo para especificar un logotipo para el sitio.Use the setSiteLogo verb to specify a logo for your site.

Nota

Esta acción solo funciona en la plantilla de sitio de comunicación (68).This action only works on the communication site template (68).

Valor JSONJSON value

  • url: dirección URL de la imagen de logotipo que se usa.url – The url of the logo image to use.

EjemploExample

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

Unirse a un sitio centralJoin a hub site

Use el verbo joinHubSite para unir el sitio a un sitio central designado.Use the joinHubSite verb to join the site to a designated hub site.

Valor JSONJSON value

  • hubSiteId: identificador del sitio central al que se une.hubSiteId – The ID of the hub site to join.
  • name: cadena opcional que especifica el nombre del sitio central.name – An optional string specifying the name of the hub site.

EjemploExample

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

Instalar un complemento o una soluciónInstall an add-in or solution

Use la acción installSolution para instalar un complemento implementado o una solución de SharePoint Framework del catálogo de aplicaciones del espacio empresarial.Use the installSolution action to install a deployed add-in or SharePoint Framework solution from the tenant app catalog.

Valores JSONJSON values

EjemploExample

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.To get the solution ID, sign in to a site by using the Connect-PnPOnline cmdlet, and then run Get-PnPApp. Devuelve una lista de las soluciones implementadas.This returns a list of your deployed solutions. 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.For multi-geo tenants, use the Product ID after setting up the solution in each geo location. Para obtener el id. de producto, cargue la solución al catálogo de aplicaciones o en la definición de la solución.Obtain the Product ID by uplaoding the solution to the app catalog or in the solution's definition.

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

Registrar una extensiónRegister an extension

Use la acción associateExtension para registrar una extensión de SharePoint Framework implementada del catálogo de aplicaciones del espacio empresarial.Use the associateExtension action to register a deployed SharePoint Framework extension from the tenant app catalog.

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.For more details on how to create and configure a SharePoint Framework extension, check out: Overview of SharePoint Framework Extensions.

Valores JSONJSON values

  • title: – título de la extensión en el catálogo de aplicaciones.title – The title of the extension in the app catalog.
  • location: – se usa para especificar el tipo de extensión.location – Used to specify the extension type. Si se usa para crear comandos, especifica dónde se mostrará el comando; de lo contrario, debería establecerse como ClientSideExtension.ApplicationCustomizer.If it is used to create commands, then where the command would be displayed; otherwise this should be set to ClientSideExtension.ApplicationCustomizer.
  • clientSideComponentId: identificador (GUID) de la extensión en el catálogo de aplicaciones.clientSideComponentId – The identifier (GUID) of the extension in the app catalog. Este valor de propiedad puede encontrarse en el archivo manifest.json o en el archivo elements.xml.This property value can be found in the manifest.json file or in the elements.xml file.
  • clientSideComponentProperties: parámetro opcional que se puede usar para especificar propiedades para la instancia de la extensión.clientSideComponentProperties – An optional parameter, which can be used to provide properties for the extension instance.
  • registrationId: parámetro opcional que indica el tipo de la lista a la que está asociada la extensión (si es una extensión de lista).registrationId – An optional parameter, which indicates the type of the list the extension is associated to (if it is a list extension).
  • registrationType: – parámetro opcional que debería especificarse si la extensión está asociada a una lista.registrationType – An optional parameter, which should be specified if the extension is associated with a list.
  • scope: – indica si la extensión está asociada a una página web o a un sitio.scope – Indicates whether the extension is associated with a Web or a Site.

EjemploExample

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

Desencadenar un flujoTrigger a flow

Use el verbo triggerFlow para desencadenar un flujo personalizado.Use the triggerFlow verb to kick off a custom flow.

Valores JSONJSON values

  • url: dirección URL de desencadenador del flujo.url – A trigger URL of the flow.
  • name: nombre del flujo.name – The name of the flow.
  • parameters: conjunto de parámetros opcional que se pasa al flujo.parameters – An optional set of parameters to pass into the flow.

EjemploExample

 {
    "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 regionalConfigure regional settings

Use la acción setRegionalSettings para establecer la configuración regional del sitio (/_layouts/15/regionalsetng.aspx).Use the setRegionalSettings action to configure the regional settings of the site (/_layouts/15/regionalsetng.aspx).

Valores JSONJSON values

EjemploExample

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

Agregar usuarios (entidades de seguridad) a los grupos de SharePointAdd users (principals) to SharePoint Groups

Use la acción addPrincipalToGroup para administrar la adición de usuarios y grupos para seleccionar los grupos de SharePoint predeterminados.Use the addPrincipalToSPGroup action to manage addition of users and groups to select default SharePoint groups. Para obtener más información, vea Información sobre los grupos de SharePoint.For more information, see Understanding SharePoint Groups. Esta acción puede usarse para los usuarios con licencia, los grupos de seguridad y los grupos de Office 365.This action can be used for licensed users, security groups, and Office 365 Groups.

Valores JSONJSON values

  • entidad de seguridad: – parámetro necesario para especificar el nombre de la entidad de seguridad (usuario o grupo) que se va a agregar al grupo de SharePoint.principal – A required parameter to specify the name of the principal (user or group) to add to the SharePoint group.
  • group: – parámetro necesario para especificar el grupo de SharePoint al que se agregará la entidad de seguridad.group – A required parameter to specify the SharePoint group to add the principal to.

EjemploExample

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).This action currently only supports the Visitors (permission level: read), Members (permission level: contribute or edit, depending on the site template), and Owners (permission level: full control) groups. Las entidades de seguridad deben agregarse de forma individual.Principals must be added individually.

{
    "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"
}

Administrar el acceso de invitadoManage guest access

Use la acción setSiteExternalSharingCapability para administrar el acceso de invitados.Use the setSiteExternalSharingCapability action to manage guest access. Para más información, vea Administrar el uso compartido externo en su entorno de SharePoint OnlineFor more information, see Manage external sharing for your SharePoint Online environment.

Valores JSONJSON values

  • capability: parámetro obligatorio que especifica la opción de uso compartido de la colección de sitios.capability – A required parameter to specify the sharing option for the site collection. Las cuatro opciones son las siguientes: Disabled, ExistingExternalUserSharingOnly, ExternalUserSharingOnly y ExternalUserAndGuestSharing.The four options are: Disabled, ExistingExternalUserSharingOnly, ExternalUserSharingOnly, ExternalUserAndGuestSharing

EjemploExample

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

Vea tambiénSee also