API Reference
Welcom to Seemplicity's GraphQL API documentation. If you're interested in using the Seemplicity API, contact Customer Services to have the API enabled for your company. You can find further relevant topics in the Seemplicity Knowledge Base here.
Learn how to query and pull data into your workspace — quickly and efficiently.
What made this section unhelpful for you?
On this page
- API Reference
Quickstart
Use this guide to get started with the Seemplicity API quickly. This guide will show you how to:
- Generate a Seemplicity API token in the production environment.
- Make your first API call using the production endpoint.
For our Seemplicity GraphQL API Reference, see our documentation here.
Get started in the production environment
This guide uses cURL.
Prerequisites
Confirm with Customer Services that Seemplicity has enabled the API for your company and provides access to the Authentication - API Token settings.
The following procedure explains how to acquire the required parameters for your company:
- <API_TOKEN>
- <API_URL>
Generate a Bearer Token and start using the Seemplicity API
To access the Seemplicity API:
- From Seemplicity's top menu ar, go to Settings > Authentication - API Tokens.
- Select +Add API Token. The API Token dialog displays.
- Enter a descriptive Name and select Create.
- Copy the generated token and save it for future use. When finished, select Close.
- Next, generate a JWT from the token in step 4 by running the script in your preferred coding platform. See the Note and the example scripts in Bash and Python, below.
- Copy the JWT. It will be valid for a limited period of time. This is the Bearer <JWT> token.
Example Scripts (in Bash and Python)
#!/bin/bash
REGION="eu-central-1"
token=$(echo "$1" | base64 -d | curl -s -X POST \
-d @- \
-H 'X-Amz-Target: AWSCognitoIdentityProviderService.InitiateAuth' \
-H 'Content-Type: application/x-amz-json-1.1' \
"https://cognito-idp."$REGION".amazonaws.com/" | jq -r ".AuthenticationResult.AccessToken")
echo $tokenimport requests
import base64
import json
REGION = 'eu-central-1'
def get_token(api_key: str) -> str:
cognito_data = base64.b64decode(api_key)
cognito_url = f'https://cognito-idp.{REGION}.amazonaws.com'
cognito_headers = {'X-Amz-Target': 'AWSCognitoIdentityProviderService.InitiateAuth',
'Content-Type': 'application/x-amz-json-1.1'}
cognito_response = requests.post(cognito_url, headers=cognito_headers, data=cognito_data)
return json.loads(cognito_response.content)['AuthenticationResult']['AccessToken']Make your API call: example in cURL
What made this section unhelpful for you?
On this page
- Quickstart
Changelog
What made this section unhelpful for you?
On this page
- Changelog
API Rate Limiting
What made this section unhelpful for you?
On this page
- API Rate Limiting
Query
The Query type in GraphQL represents the entry point for retrieving data from the API. It defines the available read-only operations (queries) that clients can execute to fetch data.
On this page
- Query
Mutation
Customer-facing GraphQL mutations for managing findings, rules, and resources. These mutations require appropriate permissions and are scoped to the customer's organization.
On this page
- Mutation
Subscription
The Subscription type in GraphQL enables real-time communication between clients and the server. It defines a set of events or data streams that clients can subscribe to and receive updates whenever the subscribed events occur.
What made this section unhelpful for you?
On this page
- Subscription
Objects
Objects in GraphQL represent complex data structures. They define the fields and their types that can be queried in a GraphQL API. Objects can have nested fields and relationships with other objects.
On this page
- Objects
Scalars
Scalars: Scalars in GraphQL represent primitive data types, such as String, Int, Boolean, Float, etc. They are used to define the types of individual fields in the GraphQL schema.
On this page
- Scalars
Directives
Directives in GraphQL provide a way to control the execution behavior of queries and mutations. They allow you to modify the result, change the execution order, skip or include fields conditionally, and apply custom logic to the resolution process.
What made this section unhelpful for you?
On this page
- Directives
Enums
Enums in GraphQL define a set of possible values for a field. They represent a discrete set of options or states that a field can have. Enums help ensure type safety and provide a clear list of valid values for a field.
On this page
- Enums
Unions
Unions in GraphQL allow you to combine multiple object types into a single type. They represent a result that can be one of several object types. Unions are useful when a field can return different types of objects, and you want to specify all the possible types in the schema.
What made this section unhelpful for you?
On this page
- Unions