# useAttributeValues Returns the values for the specified `attributes` applied to the checkout. ### Attribute values ```jsx import React from 'react'; import { Text, render, useAttributeValues, } from '@shopify/checkout-ui-extensions-react'; render('Checkout::Dynamic::Render', () => ( <Extension /> )); function Extension() { const [buyerSelectedFreeTShirt, tshirtSize] = useAttributeValues([ 'buyerSelectedFreeTShirt', 'tshirtSize', ]); if (Boolean(buyerSelectedFreeTShirt) === true) { return ( <Text> You selected a free t-shirt, size:{' '} {tshirtSize} </Text> ); } return null; } ``` ## ### UseAttributeValuesGeneratedType Returns the values for the specified `attributes` applied to the checkout. #### Returns: (string | undefined)[] #### Params: - keys: string[] export function useAttributeValues< ID extends RenderExtensionPoint = RenderExtensionPoint, >(keys: string[]): (string | undefined)[] { const attributes = useAttributes<ID>(); if (!attributes?.length) { return []; } return keys.map((key) => { const attribute = attributes.find((attribute) => attribute.key === key); return attribute?.value; }); } ## Related - [StandardApi](/docs/api/checkout-ui-extensions/apis/standardapi) - [CheckoutApi](/docs/api/checkout-ui-extensions/apis/checkoutapi) - [OrderStatusApi](/docs/api/checkout-ui-extensions/apis/orderstatusapi) - [CartLineDetailsApi](/docs/api/checkout-ui-extensions/apis/cartlinedetailsapi) - [PickupPointsApi](/docs/api/checkout-ui-extensions/apis/pickuppointsapi) - [PickupLocationsApi](/docs/api/checkout-ui-extensions/apis/pickuplocationsapi) - [ShippingMethodDetailsApi](/docs/api/checkout-ui-extensions/apis/shippingmethoddetailsapi) - [ExtensionPoints](/docs/api/checkout-ui-extensions/apis/extensionpoints)