Strise GraphQL API
Hi there, and welcome to the Strise Connect API reference 🙋♂️
The purpose of this API is to enable customers to integrate Strise with your existing systems by synchronizing data, and subscribe to changes related to entities in your Strise Portfolio.
Some features in this API are:
Contact
Got issues, suggestions for improvements, or questions? Send us a message! The endpoint below is for the production API. For the sandbox API use the following format: https://<customer name>.api.sandbox.strise.ai/connect/graphql
API Endpoints
https://graphql.strise.ai/connect/graphql
Headers
Authorization: Bearer <YOUR_TOKEN_HERE>
👋 Getting started
The following show some example queries for the Strise GraphQL API. To experiment with queries, you can use the interactive query executor in the Strise GraphQL Playground.
Generate a token
All queries require the client to be authenticated, which is done by sending your clientId
and clientSecret
to the generateToken mutation. If you have not yet acquired your client credentials, please request one by sending us a message.
mutation generateToken {
clientAccessTokenGenerate(
clientId: "SECRET_ID"
clientSecret: "SECRET_SECRET"
) {
expires
token
}
}
After generating the token, pass it as a Header for subsequent requests:
{
"Authorization": "Bearer <token>"
}
Search for a company
To make sure everything is configured correctly, a good place to start is to search for a company and see that you get some results.
Run the following to search for Strise AS by its Norwegian organisation number:
query search {
companyIdentifierSearch(where: {identifiers: ["918330100"], country: "NO"}){
edges {
node {
id,
name
}
}
}
}
🛠️ Manage an entity's status in Strise
Add a company to monitoring
To start receiving updates on a company it needs to be added to monitoring through the following mutation. You may notice that this mutation expects an entity id as input. As outlined in the description of the ID and in the previous section it can be obtained through search. Once the ID has been obtained the company can be added to monitoring by running the following mutation:
mutation monitorCompany {
companyAddToMonitoring(
where: { id: "123-abc-456-def" }
) {
success
company {
name
}
}
}
🔔 Subscribe to changes
Monitoring entities
While queries and mutations are used to proactively fetch and manipulate data, subscriptions are used to get updates reactively. You can think of them as GraphQL's version of Webhooks.
When you monitor an entity you will receive updates through the review trigger subscription. Strise will push updates as messages over this subscription, and you can act on them as you see fit. The messages are stored up to 7 days on a message queue until they are consumed by the client. A message is consumed once it has been delivered to a client that has connected with dryRun:false
.
You are in full control of what type of messages you want to receive over this subscription. A message is sent once one of your review triggers is satisfied. Which clauses that need to be satisfies before a review is triggered is configured by your team manager in the Strise System.
To get more information about review triggers, see the related help center article.
subscription subscribeToReviewTriggers {
reviewTriggers {
id
... on CompanyReviewTriggerEvent {
company
}
triggeredAt
}
}
Queries
businessPerson
Description
Find a business person by their internal Strise ID.
Response
Returns a BusinessPerson
Arguments
Name | Description |
---|---|
where - BusinessPersonWhereInput!
|
Example
Query
query BusinessPerson($where: BusinessPersonWhereInput!) {
businessPerson(where: $where) {
id
gender
birthDate
birthYear
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
details {
... on OwnershipRelationDetails {
share
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
edges {
...PathConnectionEdgeFragment
}
}
}
}
}
}
}
Variables
{"where": BusinessPersonWhereInput}
Response
{
"data": {
"businessPerson": {
"id": BusinessPersonId,
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year,
"pep": false,
"pepInfo": PepInfo,
"name": "abc123",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": true,
"sanctionInfo": SanctionInfo,
"amsCount": 123,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
}
}
businessPersonSearch
Description
Search for a business person by certain parameters, such as name, country, and birth date. Returns the first 50 hits. If you can't find the person you're looking for, try to narrow down the search by further specifying the search parameters.
Response
Returns a BusinessPersonSearchConnection!
Arguments
Name | Description |
---|---|
where - ConnectBusinessPersonSearchInput!
|
Example
Query
query BusinessPersonSearch($where: ConnectBusinessPersonSearchInput!) {
businessPersonSearch(where: $where) {
edges {
node {
id
gender
birthDate
birthYear
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
...PepRoleFragment
}
}
}
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
...EntityLikeFragment
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
...RiskFactorFragment
}
}
}
}
}
}
}
Variables
{"where": ConnectBusinessPersonSearchInput}
Response
{
"data": {
"businessPersonSearch": {
"edges": [BusinessPersonSearchConnectionEdge]
}
}
}
company
Description
Find a company by their internal Strise ID.
Response
Returns a Company
Arguments
Name | Description |
---|---|
where - CompanyWhereInput!
|
Example
Query
query Company($where: CompanyWhereInput!) {
company(where: $where) {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
details {
... on OwnershipRelationDetails {
share
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
edges {
...PathConnectionEdgeFragment
}
}
}
}
}
}
}
Variables
{"where": CompanyWhereInput}
Response
{
"data": {
"company": {
"id": CompanyId,
"industries": ["xyz789"],
"inception": "2007-12-03T10:15:30Z",
"organisationFormCodes": ["xyz789"],
"businessPurposes": ["abc123"],
"signatoryRights": "xyz789",
"isMonitored": false,
"name": "xyz789",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": true,
"sanctionInfo": SanctionInfo,
"amsCount": 987,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
}
}
companyIdentifierSearch
Description
Find companies their official identifier.
Response
Returns a CompanySearchConnection!
Arguments
Name | Description |
---|---|
where - CompanyIdentifierSearchInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query CompanyIdentifierSearch(
$where: CompanyIdentifierSearchInput!,
$pageInfo: SizePageInfoInput
) {
companyIdentifierSearch(
where: $where,
pageInfo: $pageInfo
) {
edges {
node {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
...EntityLikeFragment
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
...RiskFactorFragment
}
}
}
}
}
}
}
Variables
{
"where": CompanyIdentifierSearchInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"companyIdentifierSearch": {
"edges": [CompanySearchConnectionEdge]
}
}
}
companySearch
Description
Find companies by search.
Response
Returns a CompanySearchConnection!
Arguments
Name | Description |
---|---|
where - CompanyNameSearchInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query CompanySearch(
$where: CompanyNameSearchInput!,
$pageInfo: SizePageInfoInput
) {
companySearch(
where: $where,
pageInfo: $pageInfo
) {
edges {
node {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
...EntityLikeFragment
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
...RiskFactorFragment
}
}
}
}
}
}
}
Variables
{
"where": CompanyNameSearchInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"companySearch": {
"edges": [CompanySearchConnectionEdge]
}
}
}
customBusinessPerson
Description
Find a custom business person by their internal Strise ID.
Response
Returns a CustomBusinessPerson
Arguments
Name | Description |
---|---|
where - CustomBusinessPersonWhereInput!
|
Example
Query
query CustomBusinessPerson($where: CustomBusinessPersonWhereInput!) {
customBusinessPerson(where: $where) {
id
birthDate
birthYear
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
details {
... on OwnershipRelationDetails {
share
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
edges {
...PathConnectionEdgeFragment
}
}
}
}
}
}
}
Variables
{"where": CustomBusinessPersonWhereInput}
Response
{
"data": {
"customBusinessPerson": {
"id": CustomBusinessPersonId,
"birthDate": "2007-12-03",
"birthYear": Year,
"pep": true,
"pepInfo": PepInfo,
"name": "xyz789",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": false,
"sanctionInfo": SanctionInfo,
"amsCount": 123,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
}
}
privatePerson
Description
Find a private person by their internal Strise ID.
Response
Returns a PrivatePerson
Arguments
Name | Description |
---|---|
where - PrivatePersonWhereInput!
|
Example
Query
query PrivatePerson($where: PrivatePersonWhereInput!) {
privatePerson(where: $where) {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
details {
... on OwnershipRelationDetails {
share
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
edges {
...PathConnectionEdgeFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonWhereInput}
Response
{
"data": {
"privatePerson": {
"id": PrivatePersonId,
"name": "abc123",
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year,
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"pep": false,
"pepInfo": PepInfo,
"sanctioned": true,
"sanctionInfo": SanctionInfo,
"relationships": EntityConnection,
"amsCount": 987,
"isMonitored": true,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
}
}
privatePersonIdentifierSearch
Description
Find private persons by their official identifier, such as SSN.
Response
Returns a PrivatePersonSearchConnection!
Arguments
Name | Description |
---|---|
where - PrivatePersonIdentifierSearchInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query PrivatePersonIdentifierSearch(
$where: PrivatePersonIdentifierSearchInput!,
$pageInfo: SizePageInfoInput
) {
privatePersonIdentifierSearch(
where: $where,
pageInfo: $pageInfo
) {
edges {
node {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
...PepRoleFragment
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
...EntityLikeFragment
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
...RiskFactorFragment
}
}
}
}
}
}
}
Variables
{
"where": PrivatePersonIdentifierSearchInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"privatePersonIdentifierSearch": {
"edges": [PersonSearchConnectionEdge]
}
}
}
privatePersonSearch
Description
Find private persons by name.
Response
Returns a PrivatePersonSearchConnection!
Arguments
Name | Description |
---|---|
where - PersonSearchInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query PrivatePersonSearch(
$where: PersonSearchInput!,
$pageInfo: SizePageInfoInput
) {
privatePersonSearch(
where: $where,
pageInfo: $pageInfo
) {
edges {
node {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
...PepRoleFragment
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
...EntityLikeFragment
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
...RiskFactorFragment
}
}
}
}
}
}
}
Variables
{
"where": PersonSearchInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"privatePersonSearch": {
"edges": [PersonSearchConnectionEdge]
}
}
}
review
Description
Retrieve a review by its id.
Response
Returns a Review!
Arguments
Name | Description |
---|---|
where - ReviewWhereInput!
|
Example
Query
query Review($where: ReviewWhereInput!) {
review(where: $where) {
id
pdf
}
}
Variables
{"where": ReviewWhereInput}
Response
{"data": {"review": {"id": 4, "pdf": Base64EncodedFile}}}
reviewTriggerCompanySearch
Description
Find all review trigger events delivered for a specific company.
Response
Returns a ReviewTriggerEventSearchConnection!
Arguments
Name | Description |
---|---|
where - CompanyReviewTriggerEventWhereInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query ReviewTriggerCompanySearch(
$where: CompanyReviewTriggerEventWhereInput!,
$pageInfo: SizePageInfoInput
) {
reviewTriggerCompanySearch(
where: $where,
pageInfo: $pageInfo
) {
totalCount
edges {
node {
id
triggeredAt
statements
}
}
}
}
Variables
{
"where": CompanyReviewTriggerEventWhereInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"reviewTriggerCompanySearch": {
"totalCount": 987,
"edges": [ReviewTriggerEventSearchConnectionEdge]
}
}
}
reviewTriggerPersonSearch
Description
Find all review trigger events delivered for a specific private person.
Response
Returns a ReviewTriggerEventSearchConnection!
Arguments
Name | Description |
---|---|
where - PersonReviewTriggerEventWhereInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query ReviewTriggerPersonSearch(
$where: PersonReviewTriggerEventWhereInput!,
$pageInfo: SizePageInfoInput
) {
reviewTriggerPersonSearch(
where: $where,
pageInfo: $pageInfo
) {
totalCount
edges {
node {
id
triggeredAt
statements
}
}
}
}
Variables
{
"where": PersonReviewTriggerEventWhereInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"reviewTriggerPersonSearch": {
"totalCount": 987,
"edges": [ReviewTriggerEventSearchConnectionEdge]
}
}
}
reviewTriggerSearch
Description
Find all review trigger events delivered within a given timeframe.
Response
Returns a ReviewTriggerEventSearchConnection!
Arguments
Name | Description |
---|---|
where - ReviewTriggerEventWhereInput!
|
|
pageInfo - SizePageInfoInput
|
Example
Query
query ReviewTriggerSearch(
$where: ReviewTriggerEventWhereInput!,
$pageInfo: SizePageInfoInput
) {
reviewTriggerSearch(
where: $where,
pageInfo: $pageInfo
) {
totalCount
edges {
node {
id
triggeredAt
statements
}
}
}
}
Variables
{
"where": ReviewTriggerEventWhereInput,
"pageInfo": SizePageInfoInput
}
Response
{
"data": {
"reviewTriggerSearch": {
"totalCount": 123,
"edges": [ReviewTriggerEventSearchConnectionEdge]
}
}
}
strise
Description
Welcome to the Strise Connect API! Need help? Contact us at tech@strise.ai
Response
Returns a String!
Example
Query
query Strise {
strise
}
Response
{"data": {"strise": "xyz789"}}
Mutations
clientAccessTokenGenerate
Description
Generate a new access token for a client, which can be used to authenticate with the API through a 'Authorization: Bearer
Response
Returns an AccessToken!
Example
Query
mutation ClientAccessTokenGenerate(
$clientId: String!,
$clientSecret: String!
) {
clientAccessTokenGenerate(
clientId: $clientId,
clientSecret: $clientSecret
) {
expires
token
}
}
Variables
{
"clientId": "xyz789",
"clientSecret": "abc123"
}
Response
{
"data": {
"clientAccessTokenGenerate": {
"expires": 987,
"token": "abc123"
}
}
}
companiesAddToMonitoring
Response
Returns a CompanyBulkPayloadResource!
Arguments
Name | Description |
---|---|
where - CompaniesWhereInput!
|
Example
Query
mutation CompaniesAddToMonitoring($where: CompaniesWhereInput!) {
companiesAddToMonitoring(where: $where) {
failed
allSuccessful
}
}
Variables
{"where": CompaniesWhereInput}
Response
{
"data": {
"companiesAddToMonitoring": {
"failed": [CompanyId],
"allSuccessful": false
}
}
}
companyAddToMonitoring
Response
Returns a CompanyPayload!
Arguments
Name | Description |
---|---|
where - CompanyWhereInput!
|
Example
Query
mutation CompanyAddToMonitoring($where: CompanyWhereInput!) {
companyAddToMonitoring(where: $where) {
success
company {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": CompanyWhereInput}
Response
{
"data": {
"companyAddToMonitoring": {
"success": false,
"company": Company
}
}
}
companyOwnersUpdate
Response
Returns a CompanyPayload!
Arguments
Name | Description |
---|---|
where - CustomOwnersInput!
|
Example
Query
mutation CompanyOwnersUpdate($where: CustomOwnersInput!) {
companyOwnersUpdate(where: $where) {
success
company {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": CustomOwnersInput}
Response
{
"data": {
"companyOwnersUpdate": {
"success": false,
"company": Company
}
}
}
companyRemoveFromMonitoring
Response
Returns a CompanyPayload!
Arguments
Name | Description |
---|---|
where - CompanyWhereInput!
|
Example
Query
mutation CompanyRemoveFromMonitoring($where: CompanyWhereInput!) {
companyRemoveFromMonitoring(where: $where) {
success
company {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": CompanyWhereInput}
Response
{
"data": {
"companyRemoveFromMonitoring": {
"success": false,
"company": Company
}
}
}
privatePersonAddToMonitoring
Response
Returns a PrivatePersonPayload!
Arguments
Name | Description |
---|---|
where - PrivatePersonWhereInput!
|
Example
Query
mutation PrivatePersonAddToMonitoring($where: PrivatePersonWhereInput!) {
privatePersonAddToMonitoring(where: $where) {
success
person {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonWhereInput}
Response
{
"data": {
"privatePersonAddToMonitoring": {
"success": false,
"person": PrivatePerson
}
}
}
privatePersonCreate
Response
Returns a PrivatePersonPayload!
Arguments
Name | Description |
---|---|
where - PrivatePersonCreateInput!
|
Example
Query
mutation PrivatePersonCreate($where: PrivatePersonCreateInput!) {
privatePersonCreate(where: $where) {
success
person {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonCreateInput}
Response
{
"data": {
"privatePersonCreate": {
"success": false,
"person": PrivatePerson
}
}
}
privatePersonDelete
Response
Returns a PrivatePersonPayload!
Arguments
Name | Description |
---|---|
where - PrivatePersonWhereInput!
|
Example
Query
mutation PrivatePersonDelete($where: PrivatePersonWhereInput!) {
privatePersonDelete(where: $where) {
success
person {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonWhereInput}
Response
{
"data": {
"privatePersonDelete": {
"success": false,
"person": PrivatePerson
}
}
}
privatePersonRemoveFromMonitoring
Response
Returns a PrivatePersonPayload!
Arguments
Name | Description |
---|---|
where - PrivatePersonWhereInput!
|
Example
Query
mutation PrivatePersonRemoveFromMonitoring($where: PrivatePersonWhereInput!) {
privatePersonRemoveFromMonitoring(where: $where) {
success
person {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonWhereInput}
Response
{
"data": {
"privatePersonRemoveFromMonitoring": {
"success": false,
"person": PrivatePerson
}
}
}
privatePersonUpdate
Response
Returns a PrivatePersonPayload!
Arguments
Name | Description |
---|---|
where - PrivatePersonUpdateInput!
|
Example
Query
mutation PrivatePersonUpdate($where: PrivatePersonUpdateInput!) {
privatePersonUpdate(where: $where) {
success
person {
id
name
gender
birthDate
birthYear
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
description
details
}
rca
relations {
description
name
birthDate
roles {
description
details
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": PrivatePersonUpdateInput}
Response
{
"data": {
"privatePersonUpdate": {
"success": true,
"person": PrivatePerson
}
}
}
privatePersonsAddToMonitoring
Response
Returns a PersonBulkPayloadResource!
Arguments
Name | Description |
---|---|
where - PrivatePersonsWhereInput!
|
Example
Query
mutation PrivatePersonsAddToMonitoring($where: PrivatePersonsWhereInput!) {
privatePersonsAddToMonitoring(where: $where) {
failed
allSuccessful
}
}
Variables
{"where": PrivatePersonsWhereInput}
Response
{
"data": {
"privatePersonsAddToMonitoring": {
"failed": [PrivatePersonId],
"allSuccessful": true
}
}
}
reviewCompanyCreate
Response
Returns a ReviewPayload!
Arguments
Name | Description |
---|---|
where - CompanyWhereInput!
|
Example
Query
mutation ReviewCompanyCreate($where: CompanyWhereInput!) {
reviewCompanyCreate(where: $where) {
success
risk
id
context {
triggerId
relation {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
explanations
entity {
... on Company {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
... on BusinessPerson {
id
gender
birthDate
birthYear
pep
pepInfo {
pep
roles {
...PepRoleFragment
}
rca
relations {
...PepRelationFragment
}
}
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
... on CustomBusinessPerson {
id
birthDate
birthYear
pep
pepInfo {
pep
roles {
...PepRoleFragment
}
rca
relations {
...PepRelationFragment
}
}
name
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
amsCount
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
... on PrivatePerson {
id
name
gender
birthDate
birthYear
address {
country {
...CountryFragment
}
addressLine
city
zipCode
}
countries {
relationship
country {
...CountryFragment
}
}
identifiers {
value
country
}
pep
pepInfo {
pep
roles {
...PepRoleFragment
}
rca
relations {
...PepRelationFragment
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
...SanctionFragment
}
}
relationships {
edges {
...EntityConnectionEdgeFragment
}
}
amsCount
isMonitored
flags
riskSignals {
signals {
...RiskSignalFragment
}
}
}
}
}
}
}
Variables
{"where": CompanyWhereInput}
Response
{
"data": {
"reviewCompanyCreate": {
"success": true,
"risk": "HIGH",
"id": 4,
"context": ReviewContext
}
}
}
reviewTriggerEventGenerate
Description
Mutate the database in such a way that it satisfies a review trigger and adds the given company to review. This is only available in sandbox.
Response
Returns a CompanyPayload!
Arguments
Name | Description |
---|---|
where - CompanyWhereInput!
|
Example
Query
mutation ReviewTriggerEventGenerate($where: CompanyWhereInput!) {
reviewTriggerEventGenerate(where: $where) {
success
company {
id
industries
inception
organisationFormCodes
businessPurposes
signatoryRights
isMonitored
name
address {
country {
code
name
}
addressLine
city
zipCode
}
countries {
relationship
country {
code
name
}
}
identifiers {
value
country
}
relationships {
edges {
kind
explanation
custom
node {
name
address {
...AddressFragment
}
countries {
...CountryContextFragment
}
identifiers {
...EntityIdentifierFragment
}
relationships {
...EntityConnectionFragment
}
sanctioned
sanctionInfo {
...SanctionInfoFragment
}
amsCount
flags
riskSignals {
...RiskSignalsFragment
}
}
details {
... on OwnershipRelationDetails {
...OwnershipRelationDetailsFragment
}
}
}
}
sanctioned
sanctionInfo {
sanctioned
sanctions {
sanctionedBy
sourceReference
}
}
amsCount
flags
riskSignals {
signals {
name
riskFactors {
name
dateTime
paths {
...PathConnectionFragment
}
}
}
}
}
}
}
Variables
{"where": CompanyWhereInput}
Response
{
"data": {
"reviewTriggerEventGenerate": {
"success": true,
"company": Company
}
}
}
Subscriptions
reviewTriggers
Description
Subscribe to triggered reviews.
Response
Returns a ReviewTriggerEvent!
Arguments
Name | Description |
---|---|
dryRun - Boolean
|
Whether or not to exhaust the incoming messages. If set to false, the same message can be processed several times, until a subscription is created with dryRun = false. Default = false |
Example
Query
subscription ReviewTriggers($dryRun: Boolean) {
reviewTriggers(dryRun: $dryRun) {
id
triggeredAt
statements
}
}
Variables
{"dryRun": false}
Response
{
"data": {
"reviewTriggers": {
"id": "4",
"triggeredAt": "2007-12-03T10:15:30Z",
"statements": ["BENEFICIAL_OWNERS_CHANGE"]
}
}
}
Types
AccessToken
Address
AddressInput
Fields
Input Field | Description |
---|---|
addressLine - String
|
|
zipCode - String
|
|
city - String
|
|
country - CountryCode
|
Example
{
"addressLine": "abc123",
"zipCode": "xyz789",
"city": "xyz789",
"country": "US"
}
Base64EncodedFile
Description
An representation of a Base64EncodedFile.
Example
Base64EncodedFile
Boolean
Description
The Boolean
scalar type represents true
or false
.
BusinessPerson
Description
A resource representing a business person.
Fields
Field Name | Description |
---|---|
id - BusinessPersonId!
|
|
gender - Gender
|
The gender of the person. |
birthDate - Date
|
The birth date of the person. |
birthYear - Year
|
The birth year of the person. |
pep - Boolean!
|
Whether the person is a PEP or not. Use the pepInfo field instead.
|
pepInfo - PepInfo!
|
PEP information. |
name - String!
|
Entity name. |
address - [Address!]!
|
The postal address of the Entity. |
countries - [CountryContext!]!
|
The countries for the Entity. |
identifiers - [EntityIdentifier!]!
|
The official identifiers for this Entity. Since an Entity can have several ids (even within the same country), this is a list. |
relationships - EntityConnection!
|
Related entities (e.g. persons, companies) for this entity. Can be UBOs, board members, etc. |
Arguments
|
|
sanctioned - Boolean!
|
Whether this entity is sanctioned. Use the sanctionInfo field instead
|
sanctionInfo - SanctionInfo!
|
Sanction information related to this entity. |
amsCount - Int!
|
Number of adverse media articles found for this entity. This is an approximation and the actual number may be lower, but never higher. |
flags - [FlagKind!]!
|
Flagged events found for this entity. |
riskSignals - RiskSignals!
|
Risk signals. Currently there is only one possible risk signal, 'flags', which is created if we find flags of negative severity. |
Example
{
"id": BusinessPersonId,
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year,
"pep": true,
"pepInfo": PepInfo,
"name": "xyz789",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": false,
"sanctionInfo": SanctionInfo,
"amsCount": 123,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
BusinessPersonId
Description
A generic identifier for a business person. To obtain this ID, you must first for search the resource BusinessPerson. These IDs are issued by Strise and unique within the Strise graph.
Example
BusinessPersonId
BusinessPersonOwnershipInput
Description
The data input for updating company ownership.
Fields
Input Field | Description |
---|---|
id - BusinessPersonId!
|
|
ownership - Float
|
The ownership percentage (0-100) |
comment - String
|
|
beneficialOwner - Boolean
|
Example
{
"id": BusinessPersonId,
"ownership": 123.45,
"comment": "abc123",
"beneficialOwner": false
}
BusinessPersonSearchConnection
Fields
Field Name | Description |
---|---|
edges - [BusinessPersonSearchConnectionEdge!]!
|
Example
{"edges": [BusinessPersonSearchConnectionEdge]}
BusinessPersonSearchConnectionEdge
Fields
Field Name | Description |
---|---|
node - BusinessPerson!
|
Example
{"node": BusinessPerson}
BusinessPersonWhereInput
Fields
Input Field | Description |
---|---|
id - BusinessPersonId!
|
Example
{"id": BusinessPersonId}
CompaniesWhereInput
Description
Input to lookup companies by their internal Strise ID.
Fields
Input Field | Description |
---|---|
ids - [CompanyId!]!
|
Example
{"ids": [CompanyId]}
Company
Description
A resource representing a registered company.
Fields
Field Name | Description |
---|---|
id - CompanyId!
|
|
industries - [String!]!
|
|
inception - DateTime
|
|
organisationFormCodes - [String!]!
|
|
businessPurposes - [String!]!
|
|
signatoryRights - String
|
|
isMonitored - Boolean!
|
Whether this company is monitored or not. |
name - String!
|
Entity name. |
address - [Address!]!
|
The postal address of the Entity. |
countries - [CountryContext!]!
|
The countries for the Entity. |
identifiers - [EntityIdentifier!]!
|
The official identifiers for this Entity. Since an Entity can have several ids (even within the same country), this is a list. |
relationships - EntityConnection!
|
Related entities (e.g. persons, companies) for this entity. Can be UBOs, board members, etc. |
Arguments
|
|
sanctioned - Boolean!
|
Whether this entity is sanctioned. Use the sanctionInfo field instead
|
sanctionInfo - SanctionInfo!
|
Sanction information related to this entity. |
amsCount - Int!
|
Number of adverse media articles found for this entity. This is an approximation and the actual number may be lower, but never higher. |
flags - [FlagKind!]!
|
Flagged events found for this entity. |
riskSignals - RiskSignals!
|
Risk signals. Currently there is only one possible risk signal, 'flags', which is created if we find flags of negative severity. |
Example
{
"id": CompanyId,
"industries": ["abc123"],
"inception": "2007-12-03T10:15:30Z",
"organisationFormCodes": ["abc123"],
"businessPurposes": ["xyz789"],
"signatoryRights": "xyz789",
"isMonitored": true,
"name": "xyz789",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": true,
"sanctionInfo": SanctionInfo,
"amsCount": 987,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
CompanyBulkPayloadResource
Description
Response for bulk adding companies to monitoring.
Fields
Field Name | Description |
---|---|
failed - [CompanyId!]!
|
|
allSuccessful - Boolean!
|
Example
{"failed": [CompanyId], "allSuccessful": true}
CompanyId
Description
A generic identifier for a company. To obtain this ID, you must first for search the resource Company. These IDs are issued by Strise and unique within the Strise graph.
Example
CompanyId
CompanyIdentifierSearchInput
Description
Input to lookup companies by registration number.
Fields
Input Field | Description |
---|---|
identifiers - [String!]!
|
|
country - CountryCode!
|
Example
{
"identifiers": ["xyz789"],
"country": "US"
}
CompanyNameSearchInput
Description
A filter for looking up a company by name.
Fields
Input Field | Description |
---|---|
query - String!
|
The query string to search for. |
country - CountryCode
|
Example
{
"query": "xyz789",
"country": "US"
}
CompanyOwnershipInput
Description
The data input for updating company ownership.
Fields
Input Field | Description |
---|---|
id - CompanyId!
|
|
ownership - Float
|
|
comment - String
|
|
beneficialOwner - Boolean
|
Example
{
"id": CompanyId,
"ownership": 123.45,
"comment": "xyz789",
"beneficialOwner": true
}
CompanyPayload
CompanyReviewTriggerEvent
Fields
Field Name | Description |
---|---|
company - CompanyId!
|
The company for which the review was triggered. |
id - ID!
|
The ID of the review trigger event. |
triggeredAt - DateTime!
|
A timestamp of when the review was triggered. |
statements - [ReviewTriggerStatementKind!]!
|
The statements that make up the trigger. These are the things that have changed since the last review was performed. |
Example
{
"company": CompanyId,
"id": 4,
"triggeredAt": "2007-12-03T10:15:30Z",
"statements": ["BENEFICIAL_OWNERS_CHANGE"]
}
CompanyReviewTriggerEventWhereInput
Description
Input to lookup company review trigger events by entity ID and time interval.
Fields
Input Field | Description |
---|---|
company - CompanyId!
|
|
from - DateTime
|
|
to - DateTime
|
Example
{
"company": CompanyId,
"from": "2007-12-03T10:15:30Z",
"to": "2007-12-03T10:15:30Z"
}
CompanySearchConnection
Fields
Field Name | Description |
---|---|
edges - [CompanySearchConnectionEdge!]!
|
Example
{"edges": [CompanySearchConnectionEdge]}
CompanySearchConnectionEdge
Fields
Field Name | Description |
---|---|
node - Company!
|
Example
{"node": Company}
CompanyWhereInput
Description
The data input for adding a company.
Fields
Input Field | Description |
---|---|
id - CompanyId!
|
Example
{"id": CompanyId}
ConnectBusinessPersonSearchInput
Fields
Input Field | Description |
---|---|
query - String!
|
The query string to search for. Should be at least 3 characters long. |
country - CountryCode
|
The country where the person is registered. E.g. if you are looking for a Swedish person operating in Norway this should be set to Norway. |
gender - Gender
|
|
birthDate - Date
|
|
birthYear - Year
|
Example
{
"query": "xyz789",
"country": "US",
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year
}
Country
Fields
Field Name | Description |
---|---|
code - CountryCode!
|
|
name - String!
|
Example
{
"code": "US",
"name": "abc123"
}
CountryCode
Description
A ISO 3166-1 alpha-2 code.
Example
"US"
CountryContext
Description
Used to define an entity's relationship to a country. Such as a Company's country of residence, a PrivatePerson's citizenship, or a CustomBusinessPerson's nationality.
Fields
Field Name | Description |
---|---|
relationship - CountryRelationship!
|
|
country - Country!
|
Example
{"relationship": "ADDRESS", "country": Country}
CountryContextInput
Description
Used to define an entity's relationship to a country. Such as a Company's country of residence, a PrivatePerson's citizenship, or a CustomBusinessPerson's nationality.
Fields
Input Field | Description |
---|---|
country - CountryCode!
|
|
relationship - CountryRelationship!
|
Example
{"country": "US", "relationship": "ADDRESS"}
CountryRelationship
Description
The relationship between a country and a context, such as a person's country of residence
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
Example
"ADDRESS"
CustomBusinessPerson
Description
A resource representing a user generated custom business person.
Fields
Field Name | Description |
---|---|
id - CustomBusinessPersonId!
|
|
birthDate - Date
|
|
birthYear - Year
|
|
pep - Boolean!
|
Use the pepInfo field instead.
|
pepInfo - PepInfo!
|
PEP information. |
name - String!
|
Entity name. |
address - [Address!]!
|
The postal address of the Entity. |
countries - [CountryContext!]!
|
The countries for the Entity. |
identifiers - [EntityIdentifier!]!
|
The official identifiers for this Entity. Since an Entity can have several ids (even within the same country), this is a list. |
relationships - EntityConnection!
|
Related entities (e.g. persons, companies) for this entity. Can be UBOs, board members, etc. |
Arguments
|
|
sanctioned - Boolean!
|
Whether this entity is sanctioned. Use the sanctionInfo field instead
|
sanctionInfo - SanctionInfo!
|
Sanction information related to this entity. |
amsCount - Int!
|
Number of adverse media articles found for this entity. This is an approximation and the actual number may be lower, but never higher. |
flags - [FlagKind!]!
|
Flagged events found for this entity. |
riskSignals - RiskSignals!
|
Risk signals. Currently there is only one possible risk signal, 'flags', which is created if we find flags of negative severity. |
Example
{
"id": CustomBusinessPersonId,
"birthDate": "2007-12-03",
"birthYear": Year,
"pep": false,
"pepInfo": PepInfo,
"name": "xyz789",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": false,
"sanctionInfo": SanctionInfo,
"amsCount": 123,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
CustomBusinessPersonId
Description
A generic identifier for a custom business person.
Example
CustomBusinessPersonId
CustomBusinessPersonWhereInput
Fields
Input Field | Description |
---|---|
id - CustomBusinessPersonId!
|
Example
{"id": CustomBusinessPersonId}
CustomOwnersInput
Description
The data input for updating company ownership. If companies and businessPersons are both empty lists, custom ownerships will be reset
Fields
Input Field | Description |
---|---|
company - CompanyId!
|
|
companies - [CompanyOwnershipInput!]!
|
|
businessPersons - [BusinessPersonOwnershipInput!]!
|
|
customPersons - [CustomPersonOwnershipInput!]!
|
Example
{
"company": CompanyId,
"companies": [CompanyOwnershipInput],
"businessPersons": [BusinessPersonOwnershipInput],
"customPersons": [CustomPersonOwnershipInput]
}
CustomPersonOwnershipInput
Description
The data input for updating company ownership.
Example
{
"name": "xyz789",
"birthDate": "2007-12-03",
"ownership": 987.65,
"countries": [CountryContextInput],
"comment": "abc123",
"beneficialOwner": true
}
Date
Description
A date in the ISO 8601 format (mm-dd).
Example
"2007-12-03"
DateTime
Description
A date-time in the ISO 8601 format (yyyy, yyyy-mm, yyyy-mm-dd).
Example
"2007-12-03T10:15:30Z"
EntityConnection
Description
Represents connections to other entities: (queriedEntity)-[edges[0]]->(someEntity), (queriedEntity)-[edges[1]]->(someOtherEntity), etc.
Fields
Field Name | Description |
---|---|
edges - [EntityConnectionEdge!]!
|
Example
{"edges": [EntityConnectionEdge]}
EntityConnectionEdge
Fields
Field Name | Description |
---|---|
kind - EntityRelationshipKind!
|
The kind of relationship between the entities. |
explanation - String!
|
Details for the relationship. |
custom - Boolean!
|
Whether this is a custom relation |
node - EntityLike!
|
Related entity |
details - RelationshipDetails
|
Example
{
"kind": "BENEFICIAL_OWNERSHIP",
"explanation": "xyz789",
"custom": false,
"node": EntityLike,
"details": OwnershipRelationDetails
}
EntityIdentifier
Fields
Field Name | Description |
---|---|
value - String!
|
|
country - CountryCode
|
The country of the register from which this identifier was issued. |
Example
{
"value": "abc123",
"country": "US"
}
EntityLike
Description
An interface type of external business entities. Either a company or a business person.
Fields
Field Name | Description |
---|---|
name - String!
|
Entity name. |
address - [Address!]!
|
The postal address of the Entity. |
countries - [CountryContext!]!
|
The countries for the Entity. |
identifiers - [EntityIdentifier!]!
|
The official identifiers for this Entity. Since an Entity can have several ids (even within the same country), this is a list. |
relationships - EntityConnection!
|
Related entities (e.g. persons, companies) for this entity. Can be UBOs, board members, etc. |
Arguments
|
|
sanctioned - Boolean!
|
Whether this entity is sanctioned. Use the sanctionInfo field instead
|
sanctionInfo - SanctionInfo!
|
Sanction information related to this entity. |
amsCount - Int!
|
Number of adverse media articles found for this entity. This is an approximation and the actual number may be lower, but never higher. |
flags - [FlagKind!]!
|
Flagged events found for this entity. |
riskSignals - RiskSignals!
|
Risk signals. Currently there is only one possible risk signal, 'flags', which is created if we find flags of negative severity. |
Possible Types
EntityLike Types |
---|
Example
{
"name": "abc123",
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"relationships": EntityConnection,
"sanctioned": false,
"sanctionInfo": SanctionInfo,
"amsCount": 123,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
EntityRelationshipKind
Description
The kind of relationship between the two entities.
Values
Enum Value | Description |
---|---|
|
Some other relationship between the entities. |
|
Some other relationship between the entities. |
|
One owns shares in the other. |
|
One entity holds a role in the other. |
Example
"BENEFICIAL_OWNERSHIP"
FlagKind
Description
Flags are notable events for an entity. They can have several different triggers and levels of severity. Examples of triggers for flags are bankruptcy, dissolution, and merger.
Values
Enum Value | Description |
---|---|
|
The company has received notes from the auditor on the annual accounts. |
|
The auditor of the company has resigned. |
|
This company has been declared bankrupt. |
|
Possible bankruptcy. This company is the defendant in a court case concerning a bankruptcy. |
|
This company has signalled a capital increase. |
|
This company's CEO has resigned without a successor. |
|
This company is missing the necessary certifications associated with their industrial code. |
|
The company changed its industry code. |
|
The company has been dissolved by the local authorities. |
|
A flag signaling that the local authorities have issued a warning about compulsory dissolution to this company. |
|
The company has been liquidated by the local authorities. |
|
A flag signaling that the local authorities have issued a warning about compulsory liquidation to this company. |
|
This company has petitioned for debt restructure negotiations. |
|
This company is dissolved. |
|
Big change in number of employees |
|
This company has received a government grant. |
|
The company has an owner or a beneficial owner from a high risk country. |
|
This company is the defendant in an ongoing trial. |
|
This company is the plaintiff in an ongoing trial. |
|
This company has completed a merger. |
|
The company has more than one branches. |
|
The annual accounts indicate earning exceeding the local threshold without being VAT registered. |
|
The company has a related person that is not allowed to participate in business activities. |
|
This company's has a new CEO. |
|
The company has a new subsidiary. |
|
A flag signaling a company is in a risky industry. |
|
The company has had significant changes in its income. |
|
The company has had significant changes in its revenue. |
|
This company is placed on a warning list. |
Example
"AUDITOR_NOTES"
Float
Description
The Float
scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
123.45
Gender
Values
Enum Value | Description |
---|---|
|
Female |
|
Male |
|
Other |
Example
"FEMALE"
ID
Description
The ID
scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4"
) or integer (such as 4
) input value will be accepted as an ID.
Example
4
Int
Description
The Int
scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
123
OwnershipRelationDetails
Fields
Field Name | Description |
---|---|
share - Float
|
Example
{"share": 123.45}
PathConnection
Description
Represents a connection between N entities, a path, where N = the number of edges + 1. Example: If edges
contains two entries, each entry will represent the relationship(s) between each subsequent entity (node) in the traversed path: (queriedEntity)-[edges[0]]->(secondEntity)-[edges[1]]->(thirdEntity).
Fields
Field Name | Description |
---|---|
edges - [PathConnectionEdge!]!
|
Edges representing the path. |
Example
{"edges": [PathConnectionEdge]}
PathConnectionEdge
Description
Represents one or more relations to an entity.
Fields
Field Name | Description |
---|---|
kinds - [EntityRelationshipKind!]!
|
The kinds of relationships to the entity. |
node - EntityLike!
|
Related entity |
Example
{"kinds": ["BENEFICIAL_OWNERSHIP"], "node": EntityLike}
PepInfo
Description
PEP information.
Fields
Field Name | Description |
---|---|
pep - Boolean!
|
Whether this person is a PEP (Politically Exposed Person). |
roles - [PepRole!]!
|
Roles that make this person a PEP. |
rca - Boolean!
|
Whether this person is an RCA (Relatives and Close Associates). |
relations - [PepRelation!]!
|
Relations this person has to PEPs (making this person an RCA). |
Example
{
"pep": true,
"roles": [PepRole],
"rca": true,
"relations": [PepRelation]
}
PepRelation
Description
Relation to a PEP.
Fields
Field Name | Description |
---|---|
description - String
|
Description of the relation to the PEP. |
name - String
|
Name of related PEP. |
birthDate - Date
|
Birth date of related PEP. |
roles - [PepRole!]!
|
Roles of related PEP. |
Example
{
"description": "abc123",
"name": "abc123",
"birthDate": "2007-12-03",
"roles": [PepRole]
}
PepRole
PersonBulkPayloadResource
Description
Response for bulk adding persons to monitoring.
Fields
Field Name | Description |
---|---|
failed - [PrivatePersonId!]!
|
|
allSuccessful - Boolean!
|
Example
{"failed": [PrivatePersonId], "allSuccessful": false}
PersonReviewTriggerEvent
Fields
Field Name | Description |
---|---|
person - PrivatePersonId!
|
The person for which the review was triggered. |
id - ID!
|
The ID of the review trigger event. |
triggeredAt - DateTime!
|
A timestamp of when the review was triggered. |
statements - [ReviewTriggerStatementKind!]!
|
The statements that make up the trigger. These are the things that have changed since the last review was performed. |
Example
{
"person": PrivatePersonId,
"id": 4,
"triggeredAt": "2007-12-03T10:15:30Z",
"statements": ["BENEFICIAL_OWNERS_CHANGE"]
}
PersonReviewTriggerEventWhereInput
Description
Input to lookup person review trigger events by person ID and time interval.
Fields
Input Field | Description |
---|---|
person - PrivatePersonId!
|
|
from - DateTime
|
|
to - DateTime
|
Example
{
"person": PrivatePersonId,
"from": "2007-12-03T10:15:30Z",
"to": "2007-12-03T10:15:30Z"
}
PersonSearchConnectionEdge
Fields
Field Name | Description |
---|---|
node - PrivatePerson!
|
Example
{"node": PrivatePerson}
PersonSearchInput
Fields
Input Field | Description |
---|---|
query - String!
|
The query string to search for. |
country - CountryCode!
|
|
gender - Gender
|
The gender to search for. |
birthDate - Date
|
|
birthYear - Year
|
Example
{
"query": "abc123",
"country": "US",
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year
}
PrivatePerson
Description
A resource representing a private person.
Fields
Field Name | Description |
---|---|
id - PrivatePersonId!
|
The internal ID of this private person. |
name - String!
|
Person name. |
gender - Gender
|
The gender of the person. |
birthDate - Date
|
The birth date of the person. |
birthYear - Year
|
The birth year of the person. |
address - [Address!]!
|
|
countries - [CountryContext!]!
|
|
identifiers - [EntityIdentifier!]!
|
|
pep - Boolean!
|
Whether the person is a PEP or not. Use the pepInfo field instead.
|
pepInfo - PepInfo!
|
PEP information. |
sanctioned - Boolean!
|
Whether the person is sanctioned or not. Use the sanctionInfo field instead.
|
sanctionInfo - SanctionInfo!
|
Sanction information. |
relationships - EntityConnection!
|
|
Arguments
|
|
amsCount - Int!
|
The number of adverse media event found on this private person. This is an approximation and the actual number may be lower, but never higher. |
isMonitored - Boolean!
|
Whether this private person is monitored or not. |
flags - [FlagKind!]!
|
Flagged events for related business persons. |
riskSignals - RiskSignals!
|
Risk signals. Currently there is only one possible risk signal, 'flags', which is created if we find flags of negative severity. |
Example
{
"id": PrivatePersonId,
"name": "abc123",
"gender": "FEMALE",
"birthDate": "2007-12-03",
"birthYear": Year,
"address": [Address],
"countries": [CountryContext],
"identifiers": [EntityIdentifier],
"pep": true,
"pepInfo": PepInfo,
"sanctioned": true,
"sanctionInfo": SanctionInfo,
"relationships": EntityConnection,
"amsCount": 987,
"isMonitored": true,
"flags": ["AUDITOR_NOTES"],
"riskSignals": RiskSignals
}
PrivatePersonCreateInput
Fields
Input Field | Description |
---|---|
name - String!
|
|
nin - String!
|
|
country - CountryCode!
|
|
birthDate - Date
|
|
birthYear - Year
|
|
gender - Gender
|
|
address - [AddressInput!]!
|
|
citizenship - CountryCode
|
Example
{
"name": "abc123",
"nin": "xyz789",
"country": "US",
"birthDate": "2007-12-03",
"birthYear": Year,
"gender": "FEMALE",
"address": [AddressInput],
"citizenship": "US"
}
PrivatePersonId
Description
A generic identifier for private person. To obtain this ID, you must first for search PrivatePerson. These IDs are issued by Strise and unique within the Strise graph.
Example
PrivatePersonId
PrivatePersonIdentifierSearchInput
Description
Input to lookup private persons by their identifiers, such as their personal number.
Fields
Input Field | Description |
---|---|
identifiers - [String!]!
|
The identifiers to search for. |
country - CountryCode!
|
Example
{
"identifiers": ["xyz789"],
"country": "US"
}
PrivatePersonPayload
Description
The payload for a PrivatePerson mutation.
Fields
Field Name | Description |
---|---|
success - Boolean!
|
|
person - PrivatePerson
|
Example
{"success": false, "person": PrivatePerson}
PrivatePersonSearchConnection
Fields
Field Name | Description |
---|---|
edges - [PersonSearchConnectionEdge!]!
|
Example
{"edges": [PersonSearchConnectionEdge]}
PrivatePersonUpdateInput
Fields
Input Field | Description |
---|---|
id - PrivatePersonId!
|
|
name - String
|
|
nin - String
|
|
country - CountryCode
|
|
birthDate - Date
|
|
birthYear - Year
|
|
gender - Gender
|
|
address - [AddressInput!]
|
|
citizenship - CountryCode
|
Example
{
"id": PrivatePersonId,
"name": "abc123",
"nin": "abc123",
"country": "US",
"birthDate": "2007-12-03",
"birthYear": Year,
"gender": "FEMALE",
"address": [AddressInput],
"citizenship": "US"
}
PrivatePersonWhereInput
Fields
Input Field | Description |
---|---|
id - PrivatePersonId!
|
Example
{"id": PrivatePersonId}
PrivatePersonsWhereInput
Fields
Input Field | Description |
---|---|
ids - [PrivatePersonId!]!
|
Example
{"ids": [PrivatePersonId]}
RelationshipDetails
Description
A union type of available relationship details.
Types
Union Types |
---|
Example
OwnershipRelationDetails
Review
Fields
Field Name | Description |
---|---|
id - ID!
|
|
pdf - Base64EncodedFile
|
Example
{"id": 4, "pdf": Base64EncodedFile}
ReviewContext
Fields
Field Name | Description |
---|---|
triggerId - ReviewTriggerId!
|
Unique identifier for the firing review trigger. |
relation - EntityConnection
|
The related entity that satisfied the trigger. If this is null then the trigger was satisfied by the entity itself. |
explanations - [String!]!
|
Text describing all of the fulfilled conditions. |
entity - ReviewEntity!
|
The reviewed entity. |
Example
{
"triggerId": ReviewTriggerId,
"relation": EntityConnection,
"explanations": ["abc123"],
"entity": Company
}
ReviewEntity
Description
An entity that can be reviewed.
Types
Union Types |
---|
Example
Company
ReviewPayload
Fields
Field Name | Description |
---|---|
success - Boolean!
|
|
risk - RiskClass!
|
|
id - ID
|
Has a value only when the review is automatically completed, which is dependent on configured risk class settings. |
context - ReviewContext
|
Example
{
"success": false,
"risk": "HIGH",
"id": "4",
"context": ReviewContext
}
ReviewTriggerEvent
Description
Interace for review trigger events.
Fields
Field Name | Description |
---|---|
id - ID!
|
The ID of the review trigger event. |
triggeredAt - DateTime!
|
A timestamp of when the review was triggered. |
statements - [ReviewTriggerStatementKind!]!
|
The statements that make up the trigger. These are the things that have changed since the last review was performed. |
Possible Types
ReviewTriggerEvent Types |
---|
Example
{
"id": 4,
"triggeredAt": "2007-12-03T10:15:30Z",
"statements": ["BENEFICIAL_OWNERS_CHANGE"]
}
ReviewTriggerEventSearchConnection
Fields
Field Name | Description |
---|---|
totalCount - Int!
|
|
edges - [ReviewTriggerEventSearchConnectionEdge!]!
|
Example
{
"totalCount": 987,
"edges": [ReviewTriggerEventSearchConnectionEdge]
}
ReviewTriggerEventSearchConnectionEdge
Fields
Field Name | Description |
---|---|
node - ReviewTriggerEvent!
|
Example
{"node": ReviewTriggerEvent}
ReviewTriggerEventWhereInput
ReviewTriggerId
Description
An identifier for a review trigger
Example
ReviewTriggerId
ReviewTriggerStatementKind
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Example
"BENEFICIAL_OWNERS_CHANGE"
ReviewWhereInput
Description
Input for querying a review.
Fields
Input Field | Description |
---|---|
id - ID!
|
Example
{"id": "4"}
RiskClass
Description
Risk class for an entity. Risk class is set automatically through review automation, or by an AML officer through the application.
Values
Enum Value | Description |
---|---|
|
|
|
|
|
Example
"HIGH"
RiskFactor
Description
A risk factor is a data point that could imply risk.
Fields
Field Name | Description |
---|---|
name - String!
|
|
dateTime - DateTime!
|
|
paths - [PathConnection!]!
|
Path(s) describing the relationships traversed to find the risk signal. If empty, it means the risk signal arose from the entity itself. |
Example
{
"name": "abc123",
"dateTime": "2007-12-03T10:15:30Z",
"paths": [PathConnection]
}
RiskSignal
Description
A risk signal is created when there exists a set of risk factors that satisfies its conditions.
Fields
Field Name | Description |
---|---|
name - String!
|
|
riskFactors - [RiskFactor!]!
|
Example
{
"name": "xyz789",
"riskFactors": [RiskFactor]
}
RiskSignals
Fields
Field Name | Description |
---|---|
signals - [RiskSignal!]!
|
Example
{"signals": [RiskSignal]}
Sanction
Description
Information about a single sanction.
Fields
Field Name | Description |
---|---|
sanctionedBy - SanctionSource!
|
|
sourceReference - String
|
Example
{
"sanctionedBy": "DOW_JONES",
"sourceReference": "abc123"
}
SanctionInfo
Description
Sanction information.
Fields
Field Name | Description |
---|---|
sanctioned - Boolean!
|
|
sanctions - [Sanction!]!
|
Example
{"sanctioned": false, "sanctions": [Sanction]}
SanctionSource
Description
The entity that issued the sanction.
Values
Enum Value | Description |
---|---|
|
|
|
|
|
|
|
|
|
Example
"DOW_JONES"
SizePageInfoInput
String
Description
The String
scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"xyz789"
Year
Description
A year in the ISO 8601 format (yyyy).
Example
Year