Spaces:
Sleeping
Sleeping
{"questions": {"f46d74de-5bb3-43be-a6c7-2550f38554a4": "What command is used to import extensions in Shopify CLI with a specific client ID?", "b971d7e8-7143-4946-b801-8d83e052ce3b": "What is the recommended approach for testing changes to extensions before deploying them to a production app?", "38060bec-43d8-4b41-beee-2ad5a8ed37dd": "What command should you run to start deploying your extensions using Shopify CLI?", "41398df6-a851-4fb4-bea2-dab1417fee63": "Why is it recommended to test changes using app dev or a test app before deploying to a production app?", "3cdf4806-951b-4c02-abc1-2c927ed796ca": "What steps must be taken before an app can receive communication from Flow actions?", "b8366d3e-224e-4fc0-acf6-34d3f48546a5": "What information should be reviewed for each API endpoint to ensure proper functionality?", "423ed58d-e977-437a-8194-1b67f5d6c180": "What is the purpose of the endpoint where the automation tool sends an action's payload?", "072d2a58-10e7-4594-8bb4-778f0a4763b5": "What are the general endpoint requirements for Shopify Flow action endpoints?", "9435250e-5d1e-42a2-a240-9c5218676c00": "What are the security mechanisms required for Shopify Flow action endpoints?", "e70a0cd9-9012-4a27-bb7c-f8dfd7948088": "What type of content format is specified for the API in the general endpoint requirements?", "61335b2e-beb9-4e64-bf9a-fd93afe0a26b": "What is the purpose of defining a return type schema in Flow workflows?", "f7772ac0-cc37-471b-9805-a359dc3f5e76": "How can you link a schema file to your extension's TOML definition?", "35689214-9242-405f-9b7d-e7f209e16ac0": "What types does Flow support when defining complex types in actions and triggers?", "303bd936-3223-4f6a-8a54-bb66d6de906a": "How does Flow derive the description of the return value for fields in the schema?", "46d93112-de24-4ce2-b883-fa490bfb0d7d": "What is the purpose of the description placed in double quotes above the field in Flow?", "381fa2c0-eccf-4fcc-8ee4-d3f79674126a": "How many types can be defined as the return type for an action in the schema?", "6529f6f4-de26-4911-a766-6dc30dc3cda3": "What information is represented by the `Bid` type in the auction schema?", "25de0beb-99eb-4ffc-b51a-ce2c336c324b": "What are the possible statuses defined in the `Status` enum for an auction?", "b82a50a8-8055-43de-9b00-11d4843df042": "What is the purpose of the `shopify.extensions.toml` file in the provided folder structure?", "742010b7-6c79-4bad-8cb4-249798f78b0b": "How can a schema file be referenced in an action extension's TOML according to the context?", "44d74c45-5349-491e-80f1-d5bc8c351553": "How can a schema file be referenced in an action extension's TOML?", "cfacaa7e-c619-4267-80ce-0341a0b55f75": "What property values need to be set to reference the return type schema in a trigger extension's TOML?", "c3be74f0-1111-4dfb-8c7b-2d85f66435a8": "How can a schema file be referenced in a trigger extension's TOML?", "d1390966-71a4-48a0-b458-dfc84e7589c4": "What must the return_value object match in order to respond to an action request from Flow?"}, "relevant_contexts": {"f46d74de-5bb3-43be-a6c7-2550f38554a4": ["c5e3e886-91d1-4110-912f-f556af73a8aa"], "b971d7e8-7143-4946-b801-8d83e052ce3b": ["c5e3e886-91d1-4110-912f-f556af73a8aa"], "38060bec-43d8-4b41-beee-2ad5a8ed37dd": ["e8f9d07f-84c9-407d-8e1d-af5c1a5aea15"], "41398df6-a851-4fb4-bea2-dab1417fee63": ["e8f9d07f-84c9-407d-8e1d-af5c1a5aea15"], "3cdf4806-951b-4c02-abc1-2c927ed796ca": ["3af7bab5-2f53-46db-aa4f-546f91199715"], "b8366d3e-224e-4fc0-acf6-34d3f48546a5": ["3af7bab5-2f53-46db-aa4f-546f91199715"], "423ed58d-e977-437a-8194-1b67f5d6c180": ["0c8a55be-0304-4818-ad51-5f978f370170"], "072d2a58-10e7-4594-8bb4-778f0a4763b5": ["0c8a55be-0304-4818-ad51-5f978f370170"], "9435250e-5d1e-42a2-a240-9c5218676c00": ["9f756445-14b3-40f4-ab61-d8eed0e0ec1a"], "e70a0cd9-9012-4a27-bb7c-f8dfd7948088": ["9f756445-14b3-40f4-ab61-d8eed0e0ec1a"], "61335b2e-beb9-4e64-bf9a-fd93afe0a26b": ["afa7be9f-6151-4a04-b858-0ac97b513982"], "f7772ac0-cc37-471b-9805-a359dc3f5e76": ["afa7be9f-6151-4a04-b858-0ac97b513982"], "35689214-9242-405f-9b7d-e7f209e16ac0": ["b3f4199b-1f0b-4413-bfdd-2a1ad835b7d7"], "303bd936-3223-4f6a-8a54-bb66d6de906a": ["b3f4199b-1f0b-4413-bfdd-2a1ad835b7d7"], "46d93112-de24-4ce2-b883-fa490bfb0d7d": ["845079b7-03ad-43f1-a6e9-ed76d6ad9baf"], "381fa2c0-eccf-4fcc-8ee4-d3f79674126a": ["845079b7-03ad-43f1-a6e9-ed76d6ad9baf"], "6529f6f4-de26-4911-a766-6dc30dc3cda3": ["2dc71f0c-acbe-4858-b134-2d1bcfb7dc9f"], "25de0beb-99eb-4ffc-b51a-ce2c336c324b": ["2dc71f0c-acbe-4858-b134-2d1bcfb7dc9f"], "b82a50a8-8055-43de-9b00-11d4843df042": ["4d3ca8f9-e237-415a-a9a5-ab1246e87fd3"], "742010b7-6c79-4bad-8cb4-249798f78b0b": ["4d3ca8f9-e237-415a-a9a5-ab1246e87fd3"], "44d74c45-5349-491e-80f1-d5bc8c351553": ["35c26e50-7daf-45b7-8ca2-f073afd6e9ea"], "cfacaa7e-c619-4267-80ce-0341a0b55f75": ["35c26e50-7daf-45b7-8ca2-f073afd6e9ea"], "c3be74f0-1111-4dfb-8c7b-2d85f66435a8": ["1ebc18db-f57a-44de-a75e-543868f916a8"], "d1390966-71a4-48a0-b458-dfc84e7589c4": ["1ebc18db-f57a-44de-a75e-543868f916a8"]}, "corpus": {"c5e3e886-91d1-4110-912f-f556af73a8aa": "text\n/my-flow-extension\n shopify.extension.toml\n\nTo learn more about the extensions file structure, refer to App structure and the documentation for your extension type.\n\nAvailable Flags\n\nclient_id\n\nAn application\u2019s client_id. The ID enables you to target a specific application when running the import command.\n\n```bash\n\n!/bin/bash\n\nshopify app import-extensions --client_id abc123\n```\n\nStep 2: Migrate your extension\n\nAfter you've imported the extension, you can migrate your extension by using Shopify CLI's deploy command.\n\nNote:\nDeploying extensions using the app deploy command also publishes the extensions. We recommend testing changes by using app dev or deploying to a test app before deploying them to a production app.\n\nUse Shopify CLI to deploy your extensions:\n\nNavigate to your app directory.\n\nRun the following command to start deploying your extension(s):\n\n```bash\n\n!/bin/bash\n\nshopify app deploy\n```\n\nFollow the prompts.", "e8f9d07f-84c9-407d-8e1d-af5c1a5aea15": "Note:\nDeploying extensions using the app deploy command also publishes the extensions. We recommend testing changes by using app dev or deploying to a test app before deploying them to a production app.\n\nUse Shopify CLI to deploy your extensions:\n\nNavigate to your app directory.\n\nRun the following command to start deploying your extension(s):\n\n```bash\n\n!/bin/bash\n\nshopify app deploy\n```\n\nFollow the prompts.\n\nWhen you receive confirmation that the deploy was successful, your extensions have been released.", "3af7bab5-2f53-46db-aa4f-546f91199715": "Before your app can receive communication from Flow actions, you need to create one or more standardized API endpoints on your web server. Review the information for each endpoint to understand its requirements, the format of the payload, and the expected response. You'll also learn how to avoid processing duplicate requests, identify an action by its ID, and verify requests for security purposes.", "0c8a55be-0304-4818-ad51-5f978f370170": "Endpoint Purpose Flow action execution The endpoint where the automation tool sends your action's payload. The payload contains data that you can use to execute the action in your app. Custom configuration page preview An endpoint that provides data about your custom configuration page to display in the automation tool. This endpoint is required if you want to use a custom configuration page. Custom validation An endpoint that validates the contents of merchant-configurable properties in an action payload when an action is saved. This endpoint is required if you want to use a custom configuration page.\n\nGeneral endpoint requirements\n\nThe requirements for Shopify Flow action endpoints are as follows:\n\nRule / concern Type / requirement API format REST Content type JSON Security mechanism HMAC / Signed requests Protocol HTTPS (app domain requires valid SSL certificate)\n\nFlow action execution", "9f756445-14b3-40f4-ab61-d8eed0e0ec1a": "General endpoint requirements\n\nThe requirements for Shopify Flow action endpoints are as follows:\n\nRule / concern Type / requirement API format REST Content type JSON Security mechanism HMAC / Signed requests Protocol HTTPS (app domain requires valid SSL certificate)\n\nFlow action execution\n\nWhen a workflow that contains your action is executed, Flow sends an HTTP request to your Flow action execution endpoint (runtime URL). The request contains a payload that matches the payload schema that you configured for your action.\n\nRequest", "afa7be9f-6151-4a04-b858-0ac97b513982": "Triggers and actions can both provide data to Flow workflows. This data can be simple, such as a string or a number, or complex, such as an object or a list of objects. This guide explains how to define complex data types in your extension's TOML and how to send and receive complex data types at runtime.\n\nDefining a return type schema\n\nTo return data from an action or complex objects from a trigger, you must provide a schema for the return type using GraphQL's type system (SDL). This schema is used by Flow to provide the return object in the workflow editor. The schema can be defined in any file and linked to from your extension's TOML definition. For example, a file called schema.graphql which contains the SDL for the types used in your action or trigger, can be made in the same directory as the extension.\n\nSDL file\n\nWhen you're using complex types in Flow actions and triggers, consider the following:", "b3f4199b-1f0b-4413-bfdd-2a1ad835b7d7": "SDL file\n\nWhen you're using complex types in Flow actions and triggers, consider the following:\n\nFlow supports defining types using basic types (String, Int, Float, Boolean, and ID) as well as enums, objects, lists, and the non-nullable flag !.\n\nFlow doesn't currently support the entire SDL spec when defining action return types. Unions, interfaces, custom scalars, and directives are currently not supported. The action HTTP payload doesn't utilize any arguments defined on types in this schema.\n\nFlow derives the description of the return value from the comment on the type, which is placed in double quotes above the field. This description displays to merchants in the Flow editor when selecting the field.\n\nThe same schema file can be referenced by multiple extensions as long as the relative paths are defined correctly.", "845079b7-03ad-43f1-a6e9-ed76d6ad9baf": "Flow derives the description of the return value from the comment on the type, which is placed in double quotes above the field. This description displays to merchants in the Flow editor when selecting the field.\n\nThe same schema file can be referenced by multiple extensions as long as the relative paths are defined correctly.\n\nThe following SDL defines two types: a Bid and an Auction which contains a list of bids. The schema can contain multiple types that reference each other but only one type can be defined as the return type for the action. In the following example we're referencing the Bid type in the Auction type.\n\n```graphql\n\"Represents a bid placed on an auction\"\ntype Bid {\n \"ID of the bid\"\n id: ID!\n \"Customer that placed the bid\"\n customerId: ID!\n \"Amount of the bid\"\n amount: Float!\n}\n\nenum Status {\n COMPLETE\n IN_PROGRESS\n CANCELLED\n}", "2dc71f0c-acbe-4858-b134-2d1bcfb7dc9f": "```graphql\n\"Represents a bid placed on an auction\"\ntype Bid {\n \"ID of the bid\"\n id: ID!\n \"Customer that placed the bid\"\n customerId: ID!\n \"Amount of the bid\"\n amount: Float!\n}\n\nenum Status {\n COMPLETE\n IN_PROGRESS\n CANCELLED\n}\n\n\"Represents an auction\"\ntype Auction {\n \"ID of the auction\"\n id: ID!\n \"Name of the auction\"\n name: String\n \"Status of the auction\"\n status: Status!\n \"List of bids placed on the auction\"\n bids: [Bid!]!\n}\n```\n\nFor more information on SDL, refer to the GraphQL documentation.\n\nFolder structure\n\n/my-extension-name\n shopify.extensions.toml\n schema.graphql\n\nshopify.extension.toml file\n\nbash\n[[extensions]]\nname = \"Place auction bid\"\ntype = \"flow_action\"\nhandle = \"auction-bid\"\ndescription = \"My description\"\nruntime_url = \"https://{url}.com/api/execute\"\nschema = \"./schema.graphql\"\nreturn_type_ref = \"Auction\"\n\nReferencing the return type schema in an action extension's TOML", "4d3ca8f9-e237-415a-a9a5-ab1246e87fd3": "For more information on SDL, refer to the GraphQL documentation.\n\nFolder structure\n\n/my-extension-name\n shopify.extensions.toml\n schema.graphql\n\nshopify.extension.toml file\n\nbash\n[[extensions]]\nname = \"Place auction bid\"\ntype = \"flow_action\"\nhandle = \"auction-bid\"\ndescription = \"My description\"\nruntime_url = \"https://{url}.com/api/execute\"\nschema = \"./schema.graphql\"\nreturn_type_ref = \"Auction\"\n\nReferencing the return type schema in an action extension's TOML\n\nAfter a schema file has been defined, it can be referenced in the action extension's TOML by setting extensions.schema to the relative path of the schema file, and extension.return_type_ref to a type defined in the referenced schema file. The schema defined above can be referenced by setting the following fields:\n\nProperty Name Property value extensions.schema ./schema.graphql extensions.return_type_ref Auction\n\nReferencing the return type schema in a trigger extension's TOML", "35c26e50-7daf-45b7-8ca2-f073afd6e9ea": "After a schema file has been defined, it can be referenced in the action extension's TOML by setting extensions.schema to the relative path of the schema file, and extension.return_type_ref to a type defined in the referenced schema file. The schema defined above can be referenced by setting the following fields:\n\nProperty Name Property value extensions.schema ./schema.graphql extensions.return_type_ref Auction\n\nReferencing the return type schema in a trigger extension's TOML\n\nAfter a schema file has been defined, it can be referenced in the trigger extension's TOML by setting extensions.schema to the relative path of the schema file, and setting the type of a field to schema.<type>. The schema defined above can be referenced by setting the following fields:\n\nProperty Name Property value extensions.schema ./schema.graphql extensions.settings.fields[0].type schema.Auction\n\nReturning data from an action at runtime", "1ebc18db-f57a-44de-a75e-543868f916a8": "After a schema file has been defined, it can be referenced in the trigger extension's TOML by setting extensions.schema to the relative path of the schema file, and setting the type of a field to schema.<type>. The schema defined above can be referenced by setting the following fields:\n\nProperty Name Property value extensions.schema ./schema.graphql extensions.settings.fields[0].type schema.Auction\n\nReturning data from an action at runtime\n\nWhen responding to an action request from Flow you can add the return type in the JSON response as a field called return_value. The return_value object must match the return type defined in the extension. The return type used in our example must be an auction object, like the following:"}} |