Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
When you build a connector using the connector builder, available field mappings are determined by the data schema specified for the endpoint. The schema tab is split into two panels - for example:
Field tags are now deprecated. If you want to tag fields for tracking purposes, please see our track data shape.
All endpoints must be associated with a data schema - a formal description which defines the structure of associated data. The required schema for your third-party application should be available in the associated API documentation.
When you add a schema, you can also choose to apply field tags and set which (if any) fields are tracked.
To apply a schema for an endpoint, follow the steps below:
Step 1 Click the edit schema button:
Step 2 Paste in the required schema and save changes:
If you can't find a schema in your API documentation, you can run the API request in Postman, and then copy/paste the response as the schema.
Use the data path field to define the hierarchical level to be used for field tags and filters:
This is particularly important for JSON payloads, where the data structure is nested. Let's take an example below:
Here, all of our data is nested within one, top-level customers array object. If you scan down this example, you'll notice that there are two customer objects, each starting with an id for a customer record:
Now let's look at the data path field at the bottom of this page:
If we leave this set to empty, any subsequent field tags, mappings and filters will work on the basis that the top-level array object is our target. What we'd be saying in this scenario is 'don't treat the nested objects as separate records'.
So, for example, if we went on to apply a filter to match on first_name
contains
bob
, we'd find a match in the second customer object but ALL objects would be returned because we're targeting the top-level array object. This isn't what we want.
What we actually want is to treat each of the lower-level customer objects as separate records. To do this, we navigate the data path and select the parent object - in this case, its customers:
When you save your new data path, you won't see any changes to the schema - but the change will be applied in the field tagging tab. Here, the schema preview shows the structure that applies as per your selected data path in the schema tab.
When you come to use instances of this connector in process flows and apply a filter shape, you'll see confirmation of the selected data path in filter settings - for example:
To access field tags, edit an endpoint for your connector and select the schema/taxonomy tab - for example:
Follow the steps below to add a new field tag for your schema:
Step 1 Click the add new tag button:
...the edit field tags modal is displayed:
All data fields found in the schema associated with this endpoint are available for selection.
Step 3 Move down to the select tags field and find a tag to apply from the Patchworks field tag taxonomy- for example:
Tags are organised by entity - customer tags, location tags, shipping address tags, orders tags, etc.
Step 4 Click anywhere outside of the list of fields to confirm your selection.
Step 5 If you want to track this field, click the tracked checkbox to enable this option:
Step 6 Save the tag - for example:
...the new tag is added to your list:
Tracked fields are displayed with a tick in the tracked column.
Follow the steps below to update an existing field tag for your schema:
Step 1 Click on an existing tag that you want to change - for example:
...the edit field tags modal is displayed and any existing tags are shown - for example:
Step 2 To remove an existing tag to replace it with another, click the associated 'cross' icon - for example:
You can associate multiple tags with any given field, so you don't have to remove an existing tag unless you need to.
...then use the select tags field to find a replacement tag from the Patchworks field tag taxonomy- for example:
All data fields found in the schema associated with this endpoint are available for selection.
Step Save the tag.
Follow the steps below to remove an existing tag for your schema:
Step 1 Click on an existing tag that you want to remove - for example:
...the edit field tags modal is displayed and any existing tags are shown - for example:
Step 2 Remove all existing tags using the associated 'cross' icon - for example:
Step 3 Once all tags are removed, save the tag - for example:
Don't worry! The point of field tagging is that we tag the most common fields that Patchworks has identified. If your data schema includes fields where none of our tags apply, there's no need to tag it.
The Patchworks field tag taxonomy covers a range of entities across orders, products, fulfilments, and inventory. You'll see this if/when you come to . The current taxonomy is detailed in the following sections:
We are adding to the field tag taxonomy all the time, so you can expect the current list of tags to grow.
The essence of process flows is to pull defined data from one Patchworks connector (i.e. a third-party system) and push it into at least one other connector (i.e. another third-party system). It’s unlikely that two third-party systems will have the same data structures, therefore we use the mapping shape to define where a data field from one connector should be placed in another.
When you build a connector using the connector builder, available field mappings are determined by the data schema specified for the endpoint. Field names used in data schemas can appear to be quite random and complex - this is fine if you know the schema and you're the only company ever likely to install the associated connector, but if you think that you might want to share your connector with other Patchworks customers in future, then field tagging is really important.
A field tag is a standard Patchworks tag that can be applied for a data field in the schema associated with a connector endpoint.
The Patchworks field tag taxonomy covers a wide range of entities across orders, products, fulfilments, and inventory. You'll see this if/when you come to apply field tags.
We are adding to the field tag taxonomy all the time, so you can expect the current list of tags to grow.
By standardising how fields are identified across all connectors, we can automate mappings between them.
So, if you add two connection shapes to a process flow - each with endpoints that have been fully tagged - you'll find that mappings are automatically created when you add a map shape between them. Without field tagging, you need to apply mappings manually.
Field tagging isn't mandatory if you're building a connector that will only ever be used within your own company.
However, if there's a chance that you'd like to share your connector in the Patchworks marketplace for other organisations to install, then you must apply standard Patchworks field tags - this will be a condition of verification.
Currently, the Patchworks Marketplace includes Patchworks prebuilt connectors that can be viewed/installed by all Patchworks customers. Additionally, you'll see any connectors that you've built with the connector builder - right now, only users within your company will see these.
In the near future, you will be able to submit any connectors that you build for verification. Verified connectors will be available in the Patchworks Marketplace, for other Patchworks customers to install.
Yes - if a data field in your schema needs to be associated with more than one tag, you can apply as many as you need.
Tracked fields are now deprecated. Fields can now be tracked via the track data shape.
When you choose to add a field tag, you'll see a tracked option. Typically, this should be set for fields that you might need to track if/how records have been processed.
For example, if you're configuring an endpoint to receive 'order' data, there will usually be some sort of order id
field that uniquely identifies each order; if you're configuring an endpoint to receive 'customer' data, there will usually be some sort of customer id
field that uniquely identifies each customer.
By marking these fields as 'tracked', they become for viewing/filtering/selecting wherever tracked data is shown in Patchworks.
Tracked data can be viewed/searched from the tracked data page, so you can check when records associated with this field have been processed.
When building process flows you can define fields to track 'on the fly', using the track data shape.
Field tags | Field tags |
---|---|
Field tags | Field tags |
---|---|
Field tags | Field tags |
---|---|
Field tags | Field tags |
---|---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Field tags | Field tags |
---|
Accepts_Marketing
DEFAULT_ADDRESS_COUNTRY
Created_DateTime
ID
Currency
Updated_DateTime
DEFAULT_ADDRESS_CITY
Cost
Origin_Province_Code
Created_DateTime
SKU
ID
Updated_DateTime
Origin_Country_Code
Amount_Available
Location_ID
Inventory_Item_ID
Updated_DateTime
Active
Created_DateTime
Address1
ID
Address2
Legacy
City
Name
Country
Province
Country_Code
Updated_DateTime
Country_Name
Zip
Refund_ID
Order_ID
Created_DateTime
Order_Number
Order_Created_DateTime
Processed_DateTime
Currency_Code
Refund_Created_DateTime
Customer_Currency_Code
Refund_ID
Customer_Payment_Amount
Refund_Quantity
Gift_Card
Restock_Type
ID
Shop_Amount
Line_Item_ID
Shop_Currency_Code
Order_Created_DateTime
SKU
Order_ID
Status
Order_Number
Subtotal
Order_Quantity
Subtotal_Shop_Amount
Price
Total_Tax
Refund_As
Adjustment_Reason
Order_Number
Amount
Refund_Created_DateTime
Customer_Currency_Code
Refund_ID
Customer_Payment_Amount
Shop_Amount
Customer_Tax_Amount
Shop_Currency_Code
Customer_Tax_Currency_Code
Shop_Tax_Amount
ID
Shop_Tax_Currency_Code
Order_Created_DateTime
Tax_Amount
Order_ID
Amount
Refund_Line_Item_ID
Customer_Currency_Code
Shop_Amount
Customer_Payment_Amount
Shop_Currency_Code
Customer_Currency_Code
Shop_Amount
Customer_Payment_Amount
Shop_Currency_Code
Rate
Type
Refund_Line_Item_ID
Value
Amount
Processed_DateTime
Created_DateTime
Refund_Created_DateTime
Currency
Refund_ID
ID
Status
Order_Created_DateTime
Test
Order_ID
Type
Order_Number
Alternative_ID | Payment_Gateway |
Cancel_Reason | Payment_Status |
Canceled_DateTime | Referring_Site |
Closed_DateTime | Shop_Currency |
Confirmed | Source |
Created_DateTime | Total_Discounts |
Customer_Currency | Test_Line |
Customer_ID | Total_Line_Items_Price |
Fulfillment_Status | Total_Outstanding |
ID | Total_Price |
Location_ID | Total_Tax |
Note | Updated_DateTime |
Order_Number |
Created_DateTime | Order_Number |
Customer_Currency_Code | Quantity |
Customer_Payment_Amount | Shop_Amount |
Fulfillment_Status | Shop_Currency_Code |
Gift_Card | SKU |
ID | Taxable |
Item_ID | Total_Discount |
Item_Name | Total_Tax |
Item_Price | Variant_ID |
Order_ID | Vendor |
Created_DateTime | Tax_Locale |
Currency | Tax_Rate |
Order_ID | Total |
Customer_Discount_Amount | Shop_Discount_Amount |
Customer_Discount_Currency_Code | Shop_Discount_Currency_Code |
Order_Line_Item_ID |
Customer_Tax_Amount | Shop_Tax_Amount |
Customer_Tax_Currency_Code | Shop_Tax_Currency_Code |
Order_Line_Items_ID | Title |
Rate |
Amount | Discount_Value |
Code | Discount_Value_Type |
Created_DateTime | Entitlement_Type |
Discount_Applied_To | Order_ID |
Discount_Type | Order_Number |
Address1 | Order_ID |
Address2 | Order_Number |
City | Province_Code |
Company | Province |
Country | ZIP |
Country_Code |
Amount | Shipping_Lines_ID |
Customer_Currency_Code | Shop_Amount |
Customer_Payment_Amount | Shop_Currency_Code |
Order_ID | Customer_Disc_Currency_Code |
Order_Number | Price |
ID | Shop_Amount |
Discounted_Price | Shop_Currency_Code |
Shop_Disc_Amount | Customer_Payment_Amount |
Shop_Disc_Currency_Code | Customer_Currency_Code |
Customer_Disc_Payment_Amount |
Customer_Currency_Code | Shipping_Lines_ID |
Customer_Payment_Amount | Shop_Amount |
Price | Shop_Currency_Code |
Rate | Title |
Created_DateTime | Order_ID |
ID | Order_Number |
Location_ID | Updated_DateTime |
Order_Created_DateTime |
Fulfillable_Quantity | Order_Number |
Fulfillment_Created_DateTime | Price |
Fulfillment_ID | Product_Exists |
Fulfillment_Status | Product_ID |
Gift_Card | SKU |
ID | Taxable |
Order_Created_DateTime | Variant_ID |
Order_ID |
Created_DateTime | Tags |
Product_ID | Title |
Product_Type | Updated_DateTime |
Published_DateTime | Vendor |
Status |
Created_DateTime | Price |
ID | Product_ID |
Image_ID | SKU |
Inventory_Item_ID | Taxable |
Inventory_Quantity | TITLE |
Original_Price | Updated_DateTime |
Created_DateTime | SRC |
ID | Updated_DateTime |
Position | Variant_ID |
Product_ID |