Lookup an AppInstallation by ID or return the AppInstallation for the currently authenticated App.


ID used to lookup AppInstallation.


Was this section helpful?

Represents an installed application on a shop.


Was this section helpful?

Examples

Hide code
DescriptionCopy
query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) {
  appInstallation(id: $ownerId) {
    apiKey: metafield(namespace: $namespace, key: $key) {
      value
    }
  }
}
curl -X POST \
https://your-development-store.myshopify.com/admin/api/2024-01/graphql.json \
-H 'Content-Type: application/json' \
-H 'X-Shopify-Access-Token: {access_token}' \
-d '{
"query": "query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) { appInstallation(id: $ownerId) { apiKey: metafield(namespace: $namespace, key: $key) { value } } }",
 "variables": {
    "namespace": "secret_keys",
    "key": "api_key",
    "ownerId": "gid://shopify/AppInstallation/1002334195"
  }
}'
const { admin } = await authenticate.admin(request);

const response = await admin.graphql(
  `#graphql
  query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) {
    appInstallation(id: $ownerId) {
      apiKey: metafield(namespace: $namespace, key: $key) {
        value
      }
    }
  }`,
  {
    variables: {
      "namespace": "secret_keys",
      "key": "api_key",
      "ownerId": "gid://shopify/AppInstallation/1002334195"
    },
  },
);

const data = await response.json();
session = ShopifyAPI::Auth::Session.new(
  shop: "your-development-store.myshopify.com",
  access_token: access_token
)
client = ShopifyAPI::Clients::Graphql::Admin.new(
  session: session
)

query = <<~QUERY
  query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) {
    appInstallation(id: $ownerId) {
      apiKey: metafield(namespace: $namespace, key: $key) {
        value
      }
    }
  }
QUERY

variables = {
  "namespace": "secret_keys",
  "key": "api_key",
  "ownerId": "gid://shopify/AppInstallation/1002334195"
}

response = client.query(query: query, variables: variables)
const client = new shopify.clients.Graphql({session});
const data = await client.query({
  data: {
    "query": `query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) {
      appInstallation(id: $ownerId) {
        apiKey: metafield(namespace: $namespace, key: $key) {
          value
        }
      }
    }`,
    "variables": {
      "namespace": "secret_keys",
      "key": "api_key",
      "ownerId": "gid://shopify/AppInstallation/1002334195"
    },
  },
});
use Shopify\Clients\Graphql;

$client = new Graphql("your-development-store.myshopify.com", $accessToken);
$query = <<<QUERY
  query AppInstallationMetafield($namespace: String!, $key: String!, $ownerId: ID!) {
    appInstallation(id: $ownerId) {
      apiKey: metafield(namespace: $namespace, key: $key) {
        value
      }
    }
  }
QUERY;

$variables = [
  "namespace" => "secret_keys",
  "key" => "api_key",
  "ownerId" => "gid://shopify/AppInstallation/1002334195",
];

$response = $client->query(["query" => $query, "variables" => $variables]);
Hide code
Input variables
Copy
{
  "namespace": "secret_keys",
  "key": "api_key",
  "ownerId": "gid://shopify/AppInstallation/1002334195"
}
Hide code
Response
JSON
{
  "appInstallation": {
    "apiKey": {
      "value": "aSBhbSBhIHNlY3JldCBrZXk="
    }
  }
}