--- title: DeliveryMethodDefinition - GraphQL Admin description: >- A method definition contains the delivery rate and the conditions that must be met for the method to be applied. api_version: unstable api_name: admin source_url: html: >- https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryMethodDefinition md: >- https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryMethodDefinition.md --- # Delivery​Method​Definition object Requires Any of `assigned_shipping` or `shipping` access scopes or `manage_delivery_settings` user permission. A method definition contains the delivery rate and the conditions that must be met for the method to be applied. ## Fields * active [Boolean!](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/Boolean) non-null Whether this method definition is active. * currency​Code [Currency​Code](https://shopify.dev/docs/api/admin-graphql/unstable/enums/CurrencyCode) The currency used in this method definition. * description [String](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/String) The description of the method definition. Only available on shipping rates that are custom. * free​Conditions [\[Delivery​Rate​Range​Condition!\]!](https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryRateRangeCondition) non-null The conditions that must pass for free delivery to be applied to an order. * id [ID!](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/ID) non-null A globally-unique ID. * method​Conditions [\[Delivery​Condition!\]!](https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryCondition) non-null The method conditions that must pass for this method definition to be applied to an order. * name [String!](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/String) non-null The name of the method definition. * rate​Groups [Delivery​Rate​Group​Connection](https://shopify.dev/docs/api/admin-graphql/unstable/connections/DeliveryRateGroupConnection) The rate groups that make up this method definition. * first [Int](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/Int) ### Arguments The first `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql). * after [String](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/String) The elements that come after the specified [cursor](https://shopify.dev/api/usage/pagination-graphql). * last [Int](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/Int) The last `n` elements from the [paginated list](https://shopify.dev/api/usage/pagination-graphql). * before [String](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/String) The elements that come before the specified [cursor](https://shopify.dev/api/usage/pagination-graphql). * reverse [Boolean](https://shopify.dev/docs/api/admin-graphql/unstable/scalars/Boolean) Default:false Reverse the order of the underlying list. *** * rate​Provider [Delivery​Rate​Provider!](https://shopify.dev/docs/api/admin-graphql/unstable/unions/DeliveryRateProvider) non-null The provided rate for this method definition, from a rate definition or participant. *** ## Map ### Fields and connections with this object * [DeliveryLocationGroupZone.methodDefinitions](https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryLocationGroupZone#field-DeliveryLocationGroupZone.fields.methodDefinitions) * [DeliveryMethodDefinitionConnection.nodes](https://shopify.dev/docs/api/admin-graphql/unstable/connections/DeliveryMethodDefinitionConnection#returns-nodes) * [DeliveryMethodDefinitionEdge.node](https://shopify.dev/docs/api/admin-graphql/unstable/objects/DeliveryMethodDefinitionEdge#field-DeliveryMethodDefinitionEdge.fields.node) *** ## Interfaces * [Node](https://shopify.dev/docs/api/admin-graphql/unstable/interfaces/Node) interface *** ## DeliveryMethodDefinition Implements ### Implements * [Node](https://shopify.dev/docs/api/admin-graphql/unstable/interfaces/Node)