Menu
themeFilesUpsert
Creates or updates theme files in an online store theme. This mutation allows batch operations on multiple theme files, either creating new files or overwriting existing ones with the same filename.
Use it in a workflow
- Add a step and choose the Shopify connector.
- Pick the themeFilesUpsert action (under Theme).
- Fill in the fields below, then reference the result from later steps as
{{themefilesupsert.response.data}}.
Query
This is the mutation the action sends by default. Edit it in the step's Query field to change which fields come back.
mutation ThemeFilesUpsert($themeId: ID!, $files: [OnlineStoreThemeFilesUpsertFileInput!]!) {
themeFilesUpsert(themeId: $themeId, files: $files) {
job {
done
id
query {
appDiscountTypes
availableBackupRegions
availableCarrierServices
availableLocales
backupRegion
businessEntities
catalogOperations
collectionConditionMetafieldDefinitions
collectionRulesConditions
consentPolicyRegions
currentAppInstallation
currentStaffMember
deliveryPromiseSettings
financeAppAccessPolicy
financeKycInformation
fulfillmentConstraintRules
giftCardConfiguration
inventoryProperties
locationsAvailableForDeliveryProfiles
metafieldDefinitionTypes
onlineStore
pendingOrdersCount
primaryMarket
privacySettings
publicApiVersions
serverPixel
shop
shopBillingPreferences
shopifyPaymentsAccount
storeCreditConfiguration
taxonomy
}
}
upsertedThemeFiles {
checksumMd5
createdAt
filename
size
updatedAt
}
userErrors {
code
field
filename
message
}
}
}
Variables
Pass these as a JSON object in the step's Variables field.
{
"themeId": "string",
"files": [
{
"filename": "string",
"body": {
"type": "string",
"value": "string"
}
}
]
}
Response
Read the result with {{themefilesupsert.response.data.data.themeFilesUpsert}}. If the API returns errors, the step fails and they are at {{themefilesupsert.response.data.errors}}.
Need more? See the Shopify guide for connection setup and behaviour shared by every action.
Was this page helpful?