furnish mutation writes an identity and the records attached to it in
one call. You describe the consumer to find, and everything to add under them;
SOLO matches what already exists and creates the rest. It’s the GraphQL
equivalent of POST /v1/products/kyc_certificate_snapshot/furnish, but it
reaches every model in the graph, not only the ones a product uses.
Your organization needs the furnisher or governor role in the network you
furnish into.
Furnish a consumer with nested records
This mutation furnishes Maria Alvarez with a captured driver’s license, a device ID confirmed in a fraud attempt, her home address with its capture event, and her email address:Variables
Response
How matching works
wherefinds,createmakes. The consumer is looked up on the fields inwhere. If nothing matches, it’s created fromwherepluscreate.- SSN and date of birth match across networks. A
wherewith bothsocialSecurityNumberanddateOfBirthfinds the consumer wherever they were furnished, so the same person is one consumer across the network. Otherwherefields only match rows you can already read. - Matched rows are never modified. If Maria already exists, her name stays as it was and the nested records are added to her.
- Events are always created; identities are upserted. Nested events, such
as
documentCaptureEvents, takecreateand are always added. Nested identities, such asaddressIdentitiesandemailIdentities, takeupsertand are matched on their ownwherefirst. Anupsertwith an emptycreateadds the identity only if it doesn’t exist. - Furnishing isn’t idempotent for events. Sending the same mutation twice matches the same consumer, address and email, but adds the events again.
furnishing_entity_id.
Businesses
furnish { businessIdentity(networkId:, input:) } works the same way for
businesses. A where with both federalEin and
businessJurisdictionOfFormation matches across networks:
Variables
Related
Querying with GraphQL
Read back what you furnished.
How furnishing works
The REST, file and SFTP furnishing channels.