Cree una API personalizada mediante la herramienta de registro del complemento

Cree una API personalizada mediante el diseñador en la herramienta de registro de complementos (PRT). En este artículo se muestra cómo definir una API personalizada, agregar parámetros de solicitud y propiedades de respuesta y ver, actualizar o eliminarlas. El PRT es una aplicación cliente Windows que forma parte de las herramientas de desarrollo que puede descargar desde NuGet. Para obtener información sobre cómo descargar estas herramientas, consulte Herramientas de desarrollo de Dataverse.

Conéctese usando la herramienta de registro de complementos

  1. Abra la herramienta de registro de complementos ejecutando el comando PAC CLI pac tool prt.

  2. Seleccione +Crear nueva conexión para conectarse a su entorno de Dataverse.

  3. Asegúrese de que Office 365 esté activado.

  4. Si se está conectando usando una cuenta Microsoft diferente a la que está usando actualmente, haga clic en Mostrar opciones avanzadas e ingrese sus credenciales. De lo contrario, deje Iniciar sesión como el usuario actual seleccionado.

    Nota:

    Si su cuenta de usuario emplea la autenticación multifactor (MFA), asegúrese de que la casilla Mostrar avanzado no esté marcada.

  5. Si su cuenta Microsoft proporciona acceso a varios entornos, seleccione Mostrar la lista de organizaciones disponibles.

    Inicio de sesión con la herramienta de registro de complementos.

  6. Seleccione Iniciar sesión.

  7. Si ha seleccionado Mostrar la lista de organizaciones disponibles, seleccione la organización con la que quiere conectarse y haga clic en Iniciar sesión.

  8. Una vez que esté conectado, verá los complementos registrados existentes, las actividades de flujo de trabajo personalizadas y los proveedores de datos.

    Ver complementos existentes y activades personalizadas del flujo de trabajo.

Creación de una API personalizada

En el menú Registrar , seleccione el comando Registrar nueva API personalizada . Esta acción abre el formulario para crear una API personalizada.

Captura de pantalla del formulario para crear una API personalizada en la herramienta de registro del complemento.

Use la tabla siguiente para crear la API personalizada. Para más información, consulte Columnas de tabla de API personalizadas.

Importante

Algunas opciones no se pueden cambiar después de guardar la API personalizada. Asegúrese de comprender el propósito de cada configuración que usted no puede cambiar. Si más adelante necesita cambiar esta configuración, debe eliminar y volver a crear la API personalizada. Esta acción también elimina todos los parámetros de solicitud y todas las propiedades de respuesta asociadas a ella.

Etiqueta Description Se puede cambiar
Nombre para mostrar Un nombre localizable. Yes
Nombre Un nombre amigable y no localizable. Yes
Solución Cree una nueva solución o seleccione una existente. Al establecer este valor, se establece el prefijo de personalización adecuado para el campo Nombre único . Yes
Nombre único Nombre de la API personalizada. Este valor solo debe contener caracteres alfanuméricos y sin espacios.
El nombre completo incluye el prefijo de personalización determinado seleccionando la solución.
No
Descripción Una descripción localizable. Use cuando el mensaje se exponga para que se pueda invocar en una aplicación. Por ejemplo, como una sugerencia. Yes
Ensamblado Opcional. Seleccione un ensamblado que contenga un tipo de complemento que defina lo que hace la API personalizada. Yes
Complemento Opcional. Seleccione un tipo de complemento en el ensamblado seleccionado. Puede establecer este valor más adelante. Yes
Tipo de paso de procesamiento personalizado permitido Qué tipos de pasos de procesamiento permite usted. Más información: Seleccionar un tipo de paso de procesamiento personalizado No
Tipo de enlace Qué tipo de enlace de entidad. Más información: Seleccionar un tipo de enlace No
Nombre lógico de entidad enlazada Si selecciona Binding TypeEntity o EntityCollection, escriba el nombre lógico de la tabla que representa ese tipo. No
Nombre de privilegio de ejecución Nombre de un privilegio que controla si alguien puede usar la API. Este nombre debe ser un valor name válido de la tabla Privilege . Más información: Protección de la API personalizada mediante la necesidad de un privilegio Yes
Función Si se debe crear una función. Más información: Cuándo crear una función No
Privado Si la API personalizada debe ser privada. Más información: Cuándo hacer que la API personalizada sea privada Yes

Nota:

  • El diseñador de API personalizada de PRT no expone la propiedad Enabled For Workflow (WorkflowSdkStepEnabled). Si desea crear una API personalizada que funcione para flujos de trabajo, use otro método.
  • El diseñador de API personalizada de PRT no expone la propiedad administrada Is Personalizable . Puede establecer esta propiedad en Power Apps. Para más información, consulte Personalización de API personalizada.

Puede seguir agregando parámetros de solicitud y propiedades de respuesta, o guardar la API personalizada y agregarlos más adelante.

Creación de parámetros de solicitud de API personalizados

Una API personalizada no requiere parámetros de solicitud. Al crear o editar una API personalizada, puede agregar parámetros de solicitud seleccionando + Agregar parámetro de solicitud. Esta selección abre el formulario Parámetro .

Captura de pantalla del formulario Parámetro usado para crear un parámetro de solicitud de API personalizado.

Use la tabla siguiente para crear el parámetro de solicitud. Para obtener más información, vea CustomAPIRequestParameter Table Columns.

Etiqueta Description Se puede cambiar
Nombre para mostrar Nombre para mostrar localizable. Yes
Nombre Nombre principal del parámetro de solicitud de API personalizada. Use esta convención de nomenclatura para diferenciar este parámetro de otros que comparten un nombre único común: {Custom API Unique Name}.{Parameter UniqueName} Yes
Nombre único Nombre del parámetro cuando se llama a la API personalizada. No
Tipo Seleccione el tipo del parámetro.
Booleano
Fecha y hora
Decimal
Entidad
EntityCollection
EntityReference
Flotante
Entero
Dinero
Lista de selección
Cuerda
Array de cadenas
Guid
No
Nombre de entidad lógica Al seleccionar Entity, EntityCollection o EntityReference como Tipo, especifique la tabla. No
Descripción Descripción localizable. Yes
Es opcional Si quien realiza la llamada debe proporcionar un valor para el parámetro. No

Crear propiedades de respuesta de API personalizadas

Una API personalizada para una acción no requiere ninguna propiedad de respuesta. Al crear una API personalizada o editar una existente, puede crear nuevas propiedades de respuesta seleccionando + Agregar parámetro de respuesta. Esta opción abre el formulario Parámetro.

Captura de pantalla del formulario Parámetro usado para crear una propiedad de respuesta de API personalizada.

Use la tabla siguiente para crear la propiedad response. Para obtener más información, consulte CustomAPIResponseProperty Table Columns.

Etiqueta Description Se puede cambiar
Nombre para mostrar Nombre para mostrar localizable. Yes
Nombre Nombre principal de la propiedad de respuesta de la API personalizada. Use esta convención de nomenclatura para diferenciar este parámetro de otros que comparten un nombre único común: {Custom API Unique Name}.{Property UniqueName} Yes
Nombre único Este nombre es la propiedad devuelta al llamar a la API personalizada. No
Tipo Seleccione el tipo de la propiedad.
Booleano
Fecha y hora
Decimal
Entidad
EntityCollection
EntityReference
Flotante
Entero
Dinero
Lista de selección
Cuerda
Array de cadenas
Guid
No
Nombre de entidad lógica Al seleccionar Entity o EntityReference como Tipo, especifique la tabla. No se puede especificar un nombre de entidad lógica al elegir EntityCollection como Tipo. No
Descripción Descripción localizable. Yes

Ver una lista de API personalizadas

Para ver una lista de API personalizadas, seleccione el comando Mostrar por mensaje en el menú Ver .

Captura de pantalla del comando Mostrar por mensaje en el menú Ver que muestra las API personalizadas.

Los mensajes creados como una API personalizada tienen el prefijo (Custom API).

Eliminación de una API personalizada

Cuando vea una lista de API personalizadas, seleccione la API que desea eliminar y seleccione Cancelar registro.

Captura de pantalla del comando Unregister usado para eliminar una API personalizada seleccionada.

O bien, haga clic con el botón derecho en el elemento y seleccione Cancelar registro en el menú contextual.

Actualizar parámetros de solicitud de API personalizados o propiedades de respuesta

En la lista de parámetros de solicitud o propiedades de respuesta, seleccione la columna que desea editar:

Captura de pantalla de la columna usada para editar un parámetro de solicitud de API personalizado o una propiedad de respuesta.

Eliminar parámetros de solicitud de API personalizados o propiedades de respuesta

En la lista de parámetros de solicitud o propiedades de respuesta, seleccione la columna que desea eliminar:

Captura de pantalla de la columna usada para eliminar un parámetro de solicitud de API personalizado o una propiedad de respuesta.

Pasos siguientes

Si no establece la propiedad IsPrivate para su API personalizada, puede recuperar la definición del servicio después de crear la API personalizada. Use una GET solicitud para obtener el documento de $metadata CSDL, incluso desde el explorador. Si la dirección URL del entorno es https://yourorg.crm.dynamics.com, escriba esta dirección URL en el campo dirección del explorador para recuperar el $metadata: https://yourorg.crm.dynamics.com/api/data/v9.1/$metadata.

Busque el resultado para buscar el nombre de la API personalizada. Encontrará la acción o función creada junto con cualquier ComplexType relacionado para representar el valor devuelto. Por ejemplo:

<ComplexType Name="sample_CustomAPIExampleResponse">
    <Property Name="StringProperty"
        Type="Edm.String"
        Unicode="false"/>
</ComplexType>
<Action Name="sample_CustomAPIExample">
    <Parameter Name="StringParameter"
        Type="Edm.String"
        Nullable="false"
        Unicode="false"/>
    <ReturnType Type="mscrm.sample_CustomAPIExampleResponse"
        Nullable="false"/>
</Action>

Incluso si no establece un Plugin para la API personalizada, puede probarlo para comprobar la firma. Las propiedades de respuesta devuelven sus valores predeterminados porque no hay ningún complemento para establecer los valores. Para más información, consulte Invocación de API personalizadas.

Si agrega un complemento, debe escribirlo y registrar el ensamblado. A continuación, actualice la API personalizada para establecer el ensamblado y el complemento para especificar qué código se va a ejecutar en respuesta a la API personalizada. Para obtener más información, consulte Escritura de un complemento para la API personalizada.

Consulte también

Crear y usar API personalizadas
Creación de una API personalizada en Power Apps
Creación de una API personalizada con código
Creación de una API personalizada con archivos de solución
Crear sus propios mensajes
Columnas de tabla de API personalizadas