/// <summary> /// Updates the given metafield. /// </summary> /// <param name="metafieldId">Id of the object being updated.</param> /// <param name="metafield">The metafield to update.</param> public virtual async Task <MetaField> UpdateAsync(long metafieldId, MetaField metafield) { var req = PrepareRequest($"metafields/{metafieldId}.json"); var content = new JsonContent(new { metafield = metafield }); return(await ExecuteRequestAsync <MetaField>(req, HttpMethod.Put, content, "metafield")); }
/// <summary> /// Creates a new metafield on the given entity. /// </summary> /// <param name="metafield">A new metafield. Id should be set to null.</param> /// <param name="resourceId">The Id of the resource the metafield will be associated with. This can be variants, products, orders, customers, custom_collections, etc.</param> /// <param name="resourceType">The resource type the metaifeld will be associated with. This can be variants, products, orders, customers, custom_collections, etc.</param> public virtual async Task <MetaField> CreateAsync(MetaField metafield, long resourceId, string resourceType) { var req = PrepareRequest($"{resourceType}/{resourceId}/metafields.json"); var content = new JsonContent(new { metafield = metafield }); return(await ExecuteRequestAsync <MetaField>(req, HttpMethod.Post, content, "metafield")); }
/// <summary> /// Creates a new metafield on the shop itself. /// </summary> /// <param name="metafield">A new metafield. Id should be set to null.</param> public virtual async Task <MetaField> CreateAsync(MetaField metafield) { var req = PrepareRequest("metafields.json"); var content = new JsonContent(new { metafield = metafield }); return(await ExecuteRequestAsync <MetaField>(req, HttpMethod.Post, content, "metafield")); }
/// <summary> /// Updates the given metafield. /// </summary> /// <param name="metafieldId">Id of the object being updated.</param> /// <param name="metafield">The metafield to update.</param> /// <param name="cancellationToken">Cancellation Token</param> public virtual async Task <MetaField> UpdateAsync(long metafieldId, MetaField metafield, CancellationToken cancellationToken = default) { var req = PrepareRequest($"metafields/{metafieldId}.json"); var content = new JsonContent(new { metafield = metafield }); var response = await ExecuteRequestAsync <MetaField>(req, HttpMethod.Put, cancellationToken, content, "metafield"); return(response.Result); }
/// <summary> /// Creates a new metafield on the given entity. /// </summary> /// <param name="metafield">A new metafield. Id should be set to null.</param> /// <param name="resourceId">The Id of the resource the metafield will be associated with. This can be variants, products, orders, customers, custom_collections, etc.</param> /// <param name="resourceType">The resource type the metaifeld will be associated with. This can be variants, products, orders, customers, custom_collections, etc.</param> /// <param name="cancellationToken">Cancellation Token</param> public virtual async Task <MetaField> CreateAsync(MetaField metafield, long resourceId, string resourceType, CancellationToken cancellationToken = default) { var req = PrepareRequest($"{resourceType}/{resourceId}/metafields.json"); var content = new JsonContent(new { metafield = metafield }); var response = await ExecuteRequestAsync <MetaField>(req, HttpMethod.Post, cancellationToken, content, "metafield"); return(response.Result); }