# API Reference

The Rekord API groups endpoints by resource:

| Resource                                                                                                   | Description                                                         |
| ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| [Models](https://docs.rekordsoftware.com/rekord-api/api-reference/models)                                  | Schema definitions: fields, types, validation, resolution policies. |
| [Records](https://docs.rekordsoftware.com/rekord-api/api-reference/records)                                | Resolved, current-best-answer for each entity.                      |
| [Contributions](https://docs.rekordsoftware.com/rekord-api/api-reference/contributions)                    | Immutable evidence submissions from any source.                     |
| [Decisioning Contexts](https://docs.rekordsoftware.com/rekord-api/api-reference/contexts)                  | Decision boundaries grouping records, evidence, and evaluations.    |
| [Policies](https://docs.rekordsoftware.com/rekord-api/api-reference/policies)                              | JSON Logic expressions evaluated against a context.                 |
| [Policy Evaluations](https://docs.rekordsoftware.com/rekord-api/api-reference/policies/policy-evaluations) | Outcomes and audit trails from policy evaluation.                   |
| [Flows](https://docs.rekordsoftware.com/rekord-api/api-reference/flows)                                    | Workflow definitions, versions, triggers, and instances.            |
| [Files](https://docs.rekordsoftware.com/rekord-api/api-reference/files)                                    | Immutable binary attachments linked to records.                     |
| [Tasks](https://docs.rekordsoftware.com/rekord-api/api-reference/tasks)                                    | Human-in-the-loop work items created by flows.                      |
| [Workspaces](https://docs.rekordsoftware.com/rekord-api/api-reference/workspaces)                          | Workspace configuration and preferences.                            |
| [Teams](https://docs.rekordsoftware.com/rekord-api/api-reference/workspaces/teams)                         | Team management and membership.                                     |
| [Users](https://docs.rekordsoftware.com/rekord-api/api-reference/workspaces/users)                         | User profiles and preferences.                                      |

## API basics

The API is RESTful, and requests and responses use JSON. A few conventions apply across all endpoints:

* Property names use `camelCase`.
* Temporal values are ISO 8601 strings (e.g. `2026-01-15T09:30:00Z`).
* Empty strings are not supported. Be explicit, and use `null` to unset a value.
* Resource collections use plural nouns in URLs (e.g. `/models`, `/tasks`).
* Resource identifiers are UUIDs (e.g. `/models/{modelId}`).
* `DELETE` performs soft deletes. Resources are excluded from list results but retained for auditing.

## API evolution

The Rekord API follows an append-only evolution strategy. We add new optional properties to request bodies, new properties to response bodies, and new endpoints. We do not remove or rename existing fields, change data types, or make optional fields mandatory.

We recommend you design your client to ignore unexpected fields in API responses.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rekordsoftware.com/rekord-api/api-reference.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
