---
title: "Set relation"
method: POST
path: "/api/v3/directory/relation"
tags: ["directory"]
---

# Set relation

`POST /api/v3/directory/relation`

## Request

- The document declares no server URL.
- Auth: API key in header `authorization` and API key in header `aserto-tenant-id`
- TypeScript: <https://skmtc.dev/aserto/apis/openid-authzen-access-service/docs/api/v3/directory/relation/post.ts> (a function with typed inputs; its response is checked against the schema)

Set relation.

## Request body

- V3SetRelationRequest
  - `relation` V3Relation, required
    - `created_at` string, date-time
    - `etag` string
    - `object_id` string, required
    - `object_type` string, required
    - `relation` string, required
    - `subject_id` string, required
    - `subject_relation` string
    - `subject_type` string, required
    - `updated_at` string, date-time

## Response `200`

A successful response.

- V3SetRelationResponse
  - `result` V3Relation
    - `created_at` string, date-time
    - `etag` string
    - `object_id` string, required
    - `object_type` string, required
    - `relation` string, required
    - `subject_id` string, required
    - `subject_relation` string
    - `subject_type` string, required
    - `updated_at` string, date-time

## Other responses

- `default`: An unexpected error response.

## Changes

- **2025-02-17** `fddc0bd34946`: 1 info
  - api operation id `directory.v3.relation.set` removed and replaced with `directory.writer.v3.relation.set`
- **2023-10-31** `68bcc990c27a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/aserto/apis/openid-authzen-access-service/changes/api/v3/directory/relation/post.md)

---

[API](https://skmtc.dev/aserto/apis/openid-authzen-access-service.md) - [All operations](https://skmtc.dev/aserto/apis/openid-authzen-access-service/llms.txt) - [OpenAPI document](https://skmtc.dev/aserto/apis/openid-authzen-access-service/revisions/5dd53d1e6d2e?raw)
