Strise Connect API Docs
Examples

Custom Entities

Custom entities let you create and manage companies and persons that aren't found in public registries. This is useful for foreign entities, shell companies, or individuals without official identifiers in supported countries.

Custom companies

You can create, update, and delete companies that don't exist in a public registry.

Create a custom company

Use customCompanyCreate to create a company:

mutation CreateCustomCompany {
  customCompanyCreate(
    where: {
      name: "Acme Holdings Ltd"
      country: "GB"
      orgNumber: "12345678"
      legalForm: LIMITED_COMPANY
      address: { addressLine: "10 Downing Street", city: "London", zipCode: "SW1A 2AA", country: "GB" }
      companyShareholders: []
      personShareholders: []
    }
  ) {
    success
    company {
      id
      name
    }
  }
}

The returned id can be used in all subsequent operations, such as adding the company to monitoring or creating reviews.

Create with shareholders

You can specify company and person shareholders at creation time:

mutation CreateCompanyWithOwners {
  customCompanyCreate(
    where: {
      name: "Acme Holdings Ltd"
      country: "GB"
      companyShareholders: [
        { id: "<parent_company_id>", share: 60.0 }
      ]
      personShareholders: [
        { id: "<person_id>", share: 40.0 }
      ]
    }
  ) {
    success
    company {
      id
      name
    }
  }
}

Update a custom company

Use customCompanyUpdate to modify a custom company's details:

mutation UpdateCustomCompany {
  customCompanyUpdate(
    where: {
      id: "<company_id>"
      name: "Acme Holdings International Ltd"
      country: "GB"
      companyShareholders: []
      personShareholders: []
    }
  ) {
    success
    company {
      id
      name
    }
  }
}

Delete a custom company

Use customCompanyDelete to remove a custom company:

mutation DeleteCustomCompany {
  customCompanyDelete(where: { id: "<company_id>" }) {
    success
  }
}

Custom persons

Custom persons are business persons (officers, shareholders) that you create manually. These differ from private persons — custom persons represent publicly associated individuals in a business context.

Create a custom person

Use customPersonCreate to create a person:

mutation CreateCustomPerson {
  customPersonCreate(
    where: {
      name: "Jane Smith"
      citizenship: "GB"
      birthDate: { year: 1985, month: 3, day: 15 }
      sex: FEMALE
      address: [{ addressLine: "10 Downing Street", city: "London", zipCode: "SW1A 2AA", country: "GB" }]
    }
  ) {
    success
    person {
      id
      name
    }
  }
}

The returned id can be used when assigning the person as a shareholder on a custom company.

Update a custom person

Use customPersonEdit to modify a custom person's details:

mutation UpdateCustomPerson {
  customPersonEdit(
    where: {
      id: "<person_id>"
      name: "Jane Smith-Johnson"
      citizenship: "GB"
      birthDate: { year: 1985, month: 3, day: 15 }
      sex: FEMALE
      address: [{ addressLine: "20 New Street", city: "London", zipCode: "EC2M 4TP", country: "GB" }]
    }
  ) {
    success
    person {
      id
      name
    }
  }
}

Delete a custom person

Use customPersonDelete to remove a custom person:

mutation DeleteCustomPerson {
  customPersonDelete(where: { id: "<person_id>" }) {
    success
  }
}

Workflow: onboard a foreign entity

A typical workflow for onboarding a company not found in a public registry:

  1. Create custom persons for known shareholders and officers.
  2. Create the custom company with shareholders linked.
  3. Add the company to monitoring using companyAddToMonitoring.
  4. Create a review using reviewCompanyCreate.
# Step 1: Create a shareholder
mutation Step1 {
  customPersonCreate(
    where: { name: "Jane Smith", citizenship: "GB", address: [] }
  ) {
    success
    person { id }
  }
}

# Step 2: Create the company with the shareholder
mutation Step2 {
  customCompanyCreate(
    where: {
      name: "Acme Holdings Ltd"
      country: "GB"
      companyShareholders: []
      personShareholders: [{ id: "<person_id_from_step_1>", share: 100.0 }]
    }
  ) {
    success
    company { id }
  }
}

# Step 3: Start monitoring
mutation Step3 {
  companyAddToMonitoring(where: { id: "<company_id_from_step_2>" }) {
    success
  }
}

On this page