> ## Documentation Index
> Fetch the complete documentation index at: https://veryfront.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Check integration readiness

> Check whether one integration tool can run now in a project, before a run or to explain why a run was blocked; returns the selected connection, its state and the local blockers from stored metadata only, where a blocked or missing selection is a result and the provider is not contacted.

`integrationReadiness(projectReference: String!, name: String!, toolName: String!, connectionId: ID, expectedConnectionGenerationId: ID): SelectedIntegrationReadiness!`

Requires project.integrations.read.

## Arguments

| Argument | Type | Required | Description |
| - | - | - | - |
| `projectReference` | [`String!`](https://veryfront.com/docs/cloud/graphql/types/string) | Yes | Project ID or slug. The caller needs project.integrations.read on it. Run tokens and service accounts are refused as forbidden. |
| `name` | [`String!`](https://veryfront.com/docs/cloud/graphql/types/string) | Yes | Integration name, 1 to 128 characters. |
| `toolName` | [`String!`](https://veryfront.com/docs/cloud/graphql/types/string) | Yes | Qualified tool name in the namespace of the integration, 1 to 256 characters. |
| `connectionId` | [`ID`](https://veryfront.com/docs/cloud/graphql/types/id) | No | Exact connection to evaluate. |
| `expectedConnectionGenerationId` | [`ID`](https://veryfront.com/docs/cloud/graphql/types/id) | No | Observed generation of the connection. Requires connectionId. |

## Response

Returns [`SelectedIntegrationReadiness!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationreadiness). Open the type for its fields and nested types.

| Field | Type |
| - | - |
| `version` | [`Int!`](https://veryfront.com/docs/cloud/graphql/types/int) |
| `selection` | [`SelectedIntegrationSelection!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationselection) |
| `connection` | [`SelectedIntegrationConnectionState!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationconnectionstate) |
| `account` | [`SelectedIntegrationAccount!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationaccount) |
| `credentials` | [`SelectedIntegrationCredentialEvidence!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationcredentialevidence) |
| `localEligibility` | [`SelectedIntegrationLocalEligibility!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationlocaleligibility) |
| `providerVerification` | [`SelectedIntegrationProviderVerification!`](https://veryfront.com/docs/cloud/graphql/types/selectedintegrationproviderverification) |

Types marked with `!` cannot be null. Lists use `[Type]` notation. The [type index](https://veryfront.com/docs/cloud/graphql/schema.md) lists all published input and response types.

## Example

```graphql title="query.graphql" theme={null}
query IntegrationReadiness($projectReference: String!, $name: String!, $toolName: String!, $connectionId: ID, $expectedConnectionGenerationId: ID) {
  integrationReadiness(projectReference: $projectReference, name: $name, toolName: $toolName, connectionId: $connectionId, expectedConnectionGenerationId: $expectedConnectionGenerationId) {
    version
  }
}
```

```json title="variables.json" theme={null}
{
  "projectReference": "00000000-0000-4000-8000-000000000001",
  "name": "example",
  "toolName": "example"
}
```

<details>
  <summary>Try this query</summary>

  Calls use `https://api.veryfront.com/graphql`. Replace sample values with resources you can access. See [Authentication](https://veryfront.com/docs/cloud/authentication.md) for credentials and permissions.

  Bearer token or API key

  Stored in this tab's session. Clear credential

  Query

  Variables (JSON)
</details>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.