GraphQL API Mapping
The GraphQL API Mapping function type lets you map functions to GraphQL API endpoints without writing code. This is useful when the function can be implemented with a single GraphQL query or mutation.
Use the following file naming structure for the GraphQL API mapping implementation:
<method-name>.graphql.yml
Example
# list.graphql.yml
query: |
  query GetContacts($limit: Int, $cursor: String, $email: String) {
    contacts(first: $limit, after: $cursor, where: { email: $email }) {
      edges {
        node {
          id
          firstName
          lastName
          email
          phone
          createdAt
          updatedAt
        }
      }
      pageInfo {
        hasNextPage
        endCursor
      }
    }
  }
variables:
  limit: 100
  cursor:
    $var: $.cursor
  email:
    $var: $.filter.email
responseMapping:
  records:
    $var: response.data.contacts.edges[*].node
  cursor:
    $cond:
      - $var: response.data.contacts.pageInfo.hasNextPage
      - $var: response.data.contacts.pageInfo.endCursor
      - nullFormat
The GraphQL mapping specification includes:
query– The GraphQL query or mutation stringvariables– Variables mapping for the GraphQL queryresponseMapping– Mapping to transform the GraphQL response
Variables
Besides function-specific input variables described in each function's documentation, GraphQL functions have the following variables available:
- All functions inside the connector have 
credentialsvariable that contains credentials from the current connection - All data collection functions have 
parametersvariable that contains function-level parameters and collection-level parameters combined 
For responseMapping, you get an additional response variable that has the following fields:
data– GraphQL response dataerrors– GraphQL response errors (if any)extensions– GraphQL response extensions (if any)
Updated 10 days ago
