Ejemplos de Uso de Variables de un Connector

$headerParam

Para utilizar el valor de un header introducido en un petición a API a través de un conector, usted debe informar el nombre de la clave del header en su instrucción y utilizar la variable $headerParam.<header key>.

El ejemplo siguiente es una petición recibida por la API Platform y que será destinada al conector:

curl --location --request GET 'https://myserver/myapi/v1' \
--header 'productId: 9c69483b-2953-3e88-a87a-4ad24416d87c'

En esta petición, tenemos un header con nombre productId. Para obtener el valor de este header, $headerParam.productId debe ser utilizado de la siguiente manera:

(observe que el ejemplo es de un conector SQL)

SELECT
   PRODUCT_NAME
FROM
   PRODUCTS
WHERE
   PRODUCT_ID = $headerParam.productId

Y el siguiente ejemplo muestra la ejecución de la instrucción por el conector:

SELECT
   PRODUCT_NAME
FROM
   PRODUCTS
WHERE
   PRODUCT_ID = 9c69483b-2953-3e88-a87a-4ad24416d87c

Para introducir el valor como una cadena de caracteres, se debe pasar entre comillas simples: '$headerParam.productId'

Convertido, se verá así: '9c69483b-2953-3e88-a87a-4ad24416d87c'

$pathParam

Para utilizar el valor de un path param introduzido en un petición a API a través de un conector, usted debe informar el nombre de clave del path param en su instrucción y utilizar la variable $pathParam.<path param key>.

Como en la subsección anterior, el ejemplo siguiente es una petición recibida por la API Platform y que será destinada al conector:

curl --location --request GET 'https://myserver/api/v1/products/560' \
--header 'Authorization: 9c69483b-2953-3e88-a87a-4ad24416d87c'

La petición anterior contiene un path param con la clave /products /{productId}. Para obtener el valor del path param, $pathParam.productId debe ser utilizado de la siguiente manera:

(ejemplo de conector SQL)

SELECT
   PRODUCT_NAME
FROM
   PRODUCTS
WHERE
   PRODUCT_ID = $pathParam.productId

En la ejecución de la instrucción por el conector, tenemos:

SELECT
   PRODUCT_NAME
FROM
   PRODUCTS
WHERE
   PRODUCT_ID = 560

Para introducir el valor como una cadena de caracteres, se debe pasar entre comillas simples: '$pathParam.productId'

Convertido, se verá así: '560'

$queryParam

Para utilizar el valor de un query param introduzido en un petición a API a través de un conector, usted debe informar el nombre de clave del query param en su instrucción y utilizar la variable $queryParam.<query param key>.

Ejemplo de petición destinada al conector:

curl --location --request GET 'https://myserver/myapi/v1/products/?productName=teste' \
--header 'Authorization: 9c69483b-2953-3e88-a87a-4ad24416d87c'

La petición contiene un query param con la clave productName. Para obtener su valor, $queryParam.productName debe ser utilizado de la siguiente manera:

(ejemplo de conector SQL)

SELECT
   PRODUCT_NAME, PRODUCT_ID, PRICE
FROM
   PRODUCTS
WHERE
   PRODUCT_NAME = '$queryParam.productName'

En la ejecución de la instrucción por el conector, tenemos:

SELECT
   PRODUCT_NAME, PRODUCT_ID, PRICE
FROM
   PRODUCTS
WHERE
   PRODUCT_NAME = 'test'

$body

Para incluir en una base de datos valores pasados en el cuerpo de una petición, debe introducir en su instrucción a un connector las claves contenidas en el cuerpo y utilizar la variable $body.<body key>, como en el ejemplo siguiente.

Petición recibida por la API Platform y destinada al conector:

curl --location --request POST 'https://myserver/myapi/v1/products' \
--header 'Authorization: 9c69483b-2953-3e88-a87a-4ad24416d87c' \
--header 'Content-Type: application/json' \
--data-raw '{
    "productName": "test",
    "productPrice": "10.00"
}'

La petición anterior contiene un cuerpo con las claves productName y productPrice. Puede insertar sus valores en la base de datos de la siguiente manera:

(ejemplo de conector SQL)

INSERT INTO PRODUCTS (PRODUCT_NAME, PRICE) VALUES ('$body.productName', '$body.productPrice');

En la ejecución de la instrucción por el conector, tenemos:

INSERT INTO PRODUCTS (PRODUCT_NAME, PRICE) VALUES ('test', '10.00');
Thanks for your feedback!
EDIT

Share your suggestions with us!
Click here and then [+ Submit idea]