How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

TrustLayer Primary Records API

The Primary Records API from TrustLayer — 12 operation(s) for primary records.

TrustLayer Primary Records API is one of 21 APIs that TrustLayer publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Primary Records. The published artifact set on APIs.io includes an OpenAPI specification and API documentation.

This API exposes 27 operations across 12 paths, and defines 2 schemas. It is described by OpenAPI 3.2.0, at version 1.0.

Requests are made against 2 base URLs: http://localhost:4000/v1, https://api.trustlayer.io/v1.

27 operations 12 paths 2 schemas 5 DELETE11 GET4 PATCH6 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0
Base URL
https://api.trustlayer.io/v2
Authentication
API Key
License
Terms of Service
Resource Areas
1

Authentication & Security 1

TrustLayer Primary Records API declares 1 security scheme for authenticating requests. An API key is passed in the header as Authorization (Token). By default, every request must be authenticated.

Paths & Operations 27

Across 12 paths, the API surfaces 27 operations — 5 DELETE, 11 GET, 4 PATCH, 6 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Primary Records 27
GET
/primary-records
List primary records in the caller's organization. Results are always scoped to the caller's organization. Supports pagination via limit and skip. Filtering: id (objectId), createdAt (date), updatedA…
12 params → 200400401403404500
POST
/primary-records
Create a new primary record in the caller's organization. The owning organization is derived from the access token. Returns the new record's identifier.
body → 201400401403404500
GET
/primary-records/{id}
Read a single primary record by id, scoped to the caller's organization. Use the fields query parameter to limit the response to a projection of the record.
2 params → 200400401403404500
PATCH
/primary-records/{id}
Partially update a primary record. Any subset of writable fields may be provided; omitted fields are left unchanged. Status changes are accepted on this endpoint and are applied via the dedicated sta…
1 param body → 200400401403404500
DELETE
/primary-records/{id}
Delete a primary record. The operation is idempotent — deleting a record that does not exist (or is already deleted) returns 200 with the requested id and is not treated as an error.
1 param → 200400401403404500
GET
/primary-records/{id}/attributes
List attributes (custom field values) embedded in a primary record. Attributes are stored as an embedded array on the record — there is no separate filtering beyond pagination. Results are scoped to…
3 params → 200400401403404500
GET
/primary-records/{id}/attributes/{attributeId}
Read a single attribute (custom field value) embedded in a primary record. Returns 404 when the primary record or the specific attribute does not exist.
2 params → 200400401403404500
PUT
/primary-records/{id}/attributes/{attributeId}
Create or replace an attribute (custom field value) on a primary record. This is a full replacement — omitting value or optionIds clears that field. Returns 404 when the primary record or the referen…
2 params body → 200400401403404500
DELETE
/primary-records/{id}/attributes/{attributeId}
Delete an attribute (custom field value) from a primary record. Returns 404 when the primary record or the specific attribute does not exist.
2 params → 200400401403404500
GET
/primary-records/{id}/request-records
List request records scoped to a specific primary record. The primaryRecordId filter is always fixed to the :id path parameter and cannot be overridden by the caller. Supports pagination via limit an…
14 params → 200400401403404500
POST
/primary-records/{id}/request-records
Create a new request record and assign it to a primary record. The primary record is identified by the :id path parameter. Returns the new request record's identifier.
1 param body → 201400401403404500
GET
/primary-records/{id}/request-records/{recordId}
Read a single request record scoped to a specific primary record. Returns 404 if the request record does not exist or does not belong to the specified primary record.
3 params → 200400401403404500
PATCH
/primary-records/{id}/request-records/{recordId}
Partially update a request record scoped to a specific primary record. Any subset of the request body fields may be provided; omitted fields are left unchanged. Returns the full updated request recor…
2 params body → 200400401403404500
DELETE
/primary-records/{id}/request-records/{recordId}
Delete a request record scoped to a specific primary record. Returns 404 if the request record does not exist or does not belong to the specified primary record.
2 params → 200400401403404500
GET
/primary-records/{id}/contacts
List contacts assigned to a primary record. Contacts are embedded within the primary record and are returned in insertion order. Filtering by contact fields is not supported — use limit and skip for…
3 params → 200400401403404500
POST
/primary-records/{id}/contacts
Assign a contact to a primary record. The contact must already exist in the contacts collection. If the contact is already assigned, the existing assignment is updated with the provided fields.
1 param body → 201400401403404500
GET
/primary-records/{id}/contacts/{contactId}
Read a single contact assigned to a primary record. Both the primary record and the contact assignment must exist within the caller's organization.
2 params → 200400401403404500
PATCH
/primary-records/{id}/contacts/{contactId}
Partially update a contact assignment on a primary record. Only the fields provided in the request body are changed; omitted fields retain their current values. Both the primary record and the contac…
2 params body → 200400401403404500
DELETE
/primary-records/{id}/contacts/{contactId}
Remove a contact assignment from a primary record. The contact record itself is not deleted — only the assignment to this primary record is removed. Both the primary record and the contact assignment…
2 params → 200400401403404500
GET
/primary-records/{id}/tags
List tag assignments on a primary record. Tags are stored as an embedded array on the parent record, so server-side filtering, sorting, and field projection are not supported — only limit and skip ap…
3 params → 200400401403404500
POST
/primary-records/{id}/tags
Assign a tag to a primary record. The body references an existing tag in the same organization by id; an optional expiresAt controls when the assignment expires.
1 param body → 201400401403404500
GET
/primary-records/{id}/tags/{tagId}
Read a single tag assignment on a primary record by tag id.
2 params → 200400401403404500
PATCH
/primary-records/{id}/tags/{tagId}
Partially update a tag assignment on a primary record (currently only the expiresAt field can be updated).
2 params body → 200400401403404500
DELETE
/primary-records/{id}/tags/{tagId}
Remove a tag assignment from a primary record. The operation is idempotent — removing a tag that is not assigned (or no longer assigned) returns 200 with the requested tag id and is not treated as an…
2 params → 200400401403404500
POST
/primary-records/{id}/compliance-certificates
Create compliance certificates for all request records under a primary record. Accepts application/json with optional effectiveDate and expirationDate fields, or multipart/form-data with the same dat…
1 param body → 201400401403404500
GET
/primary-records/{id}/request-records/{recordId}/compliance-certificate
Get compliance certificate for a request record in a primary record
3 params → 200400401403404500
POST
/primary-records/{id}/request-records/{recordId}/compliance-certificate
Create compliance certificate for a request record in a primary record
2 params body → 201400401403404500

Schemas 2

The contract defines 2 schemas that model the data the API accepts and returns. Each schema is shown below with its type and property counts.

objectIdInput
string
objectId
string

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

trustlayer-primary-records-api-openapi.yml Raw ↑

Other APIs TrustLayer publishes across the network.

TrustLayer Auth API
TrustLayer branding API
TrustLayer compliance-profiles API
TrustLayer contacts API
TrustLayer Context Objects API
TrustLayer Context Records API
TrustLayer custom-fields API
TrustLayer Document Types API
TrustLayer documents API
TrustLayer Parties API
TrustLayer party-types API
TrustLayer Policies API
Where this information came from

This is an independent, third-party profile of TrustLayer Primary Records API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.