lib/shopify-cli/partners_api.rb
##
# issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema.
# It loads a graphql query from a file so that you do not need to use large
# unwieldy query strings. It also handles authentication for you as well.
#
# #### Parameters
# - `ctx`: running context from your command
# - `query_name`: name of the query you want to use, loaded from the `lib/graphql` directory.
# - `**variables`: a hash of variables to be supplied to the query or mutation
#
# #### Raises
#
# * http 404 will raise a ShopifyCli::API::APIRequestNotFoundError
# * http 400..499 will raise a ShopifyCli::API::APIRequestClientError
# * http 500..599 will raise a ShopifyCli::API::APIRequestServerError
# * All other codes will raise ShopifyCli::API::APIRequestUnexpectedError
#
# #### Returns
#
# * `resp` - graphql response data hash. This can be a different shape for every query.
#
# #### Example
#
#   ShopifyCli::PartnersAPI.query(@ctx, 'all_organizations')
#
issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema.
It loads a graphql query from a file so that you do not need to use large
unwieldy query strings. It also handles authentication for you as well.



Raises



Returns

`resp` - graphql response data hash. This can be a different shape for every query.

Example


issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema . It loads a graphql query from a file so that you do not need to use large unwieldy query strings . It also handles authentication for you as well . Raises Returns ` resp ` - graphql response data hash . This can be a different shape for every query . Example
def query(ctx, query_name, **variables)
        CLI::Kit::Util.begin do
          api_client(ctx).query(query_name, variables: variables)
        end.retry_after(API::APIRequestUnauthorizedError, retries: 1) do
          ShopifyCli::IdentityAuth.new(ctx: ctx).reauthenticate
        end
      rescue API::APIRequestUnauthorizedError => e
        if (request_info = auth_failure_info(ctx, e))
          ctx.puts(ctx.message("core.api.error.failed_auth_debugging", request_info))
        end
        ctx.abort(ctx.message("core.api.error.failed_auth"))
      rescue API::APIRequestNotFoundError
        ctx.puts(ctx.message("core.partners_api.error.account_not_found", ShopifyCli::TOOL_NAME))
      end
def query ( ctx , query_name , ** variables ) CLI :: Kit :: Util . begin do api_client ( ctx ) . query ( query_name , variables : variables ) end . retry_after ( API :: APIRequestUnauthorizedError , retries : 1 ) do ShopifyCli :: IdentityAuth . new ( ctx : ctx ) . reauthenticate end rescue API :: APIRequestUnauthorizedError => e if ( request_info = auth_failure_info ( ctx , e ) ) ctx . puts ( ctx . message ( "core.api.error.failed_auth_debugging" , request_info ) ) end ctx . abort ( ctx . message ( "core.api.error.failed_auth" ) ) rescue API :: APIRequestNotFoundError ctx . puts ( ctx . message ( "core.partners_api.error.account_not_found" , ShopifyCli :: TOOL_NAME ) ) end
issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema.
issues a graphql query or mutation to the Shopify Partners Dashboard CLI Schema .
ctx
<not_specific>
query_name
<not_specific>
variables
<not_specific>