> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://docs.prividium.com/api/mcp` to find what you need.
>
> **Have feedback?** Use `submit_feedback` on the same MCP server.

# m2m-applications

## GET /m2m-applications/

`GET /m2m-applications/`

Search m2m applications with pagination

### Query parameters

- `limit` `integer`
- `offset` `integer`

### Responses

#### `200`: Default Response

Body (`application/json`):

- `items` `object[]` _(required)_
  - `id` `string` _(required)_
  - `name` `string` _(required)_
  - `description` `string | null` _(required)_
  - `ownerOrganizationId` `string | null` _(required)_
  - `createdAt` `string <date-time>` _(required)_
  - `updatedAt` `string <date-time>` _(required)_
  - `roles` `object[]` _(required)_
    - `id` `string` _(required)_
    - `roleName` `string` _(required)_
    - `systemPermissions` `string[]` _(required)_
    - `isSystemRole` `boolean` _(required)_
    - `organizationId` `string | null` _(required)_
    - `createdAt` `string <date-time>` _(required)_
    - `updatedAt` `string <date-time>` _(required)_
  - `organizations` `object[]` _(required)_
    - `id` `string` _(required)_
  - `hasOverbroadIpWhitelist` `boolean` _(required)_
- `pagination` `object` _(required)_
  - `currentPage` `number` _(required)_
  - `totalPages` `number` _(required)_
  - `totalItems` `number` _(required)_
  - `limit` `number` _(required)_
  - `offset` `number` _(required)_

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl '/api/m2m-applications/?limit=10&offset=0'
```

```ts
fetch('/api/m2m-applications/?limit=10&offset=0')
```

## POST /m2m-applications/

`POST /m2m-applications/`

Create a new m2m application

### Request body (required) (`application/json`)

- `name` `string` _(required)_
- `description` `string | null`
- `roles` `object[]` _(required)_
  - `id` `string` _(required)_
- `organizationIds` `string[]`

### Responses

#### `200`: Default Response

Body (`application/json`):

- `id` `string` _(required)_
- `name` `string` _(required)_
- `description` `string | null` _(required)_
- `ownerOrganizationId` `string | null` _(required)_
- `createdAt` `string <date-time>` _(required)_
- `updatedAt` `string <date-time>` _(required)_
- `roles` `object[]` _(required)_
  - `id` `string` _(required)_
  - `roleName` `string` _(required)_
  - `systemPermissions` `string[]` _(required)_
  - `isSystemRole` `boolean` _(required)_
  - `organizationId` `string | null` _(required)_
  - `createdAt` `string <date-time>` _(required)_
  - `updatedAt` `string <date-time>` _(required)_
- `organizations` `object[]` _(required)_
  - `id` `string` _(required)_
- `hasOverbroadIpWhitelist` `boolean` _(required)_

#### `400`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/ \
  --request POST \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "string",
  "description": "string",
  "roles": [
    {
      "id": "string"
    }
  ],
  "organizationIds": [
    "string"
  ]
}'
```

```ts
fetch('/api/m2m-applications/', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    name: 'string',
    description: 'string',
    roles: [
      {
        id: 'string'
      }
    ],
    organizationIds: ['string']
  })
})
```

## GET /m2m-applications/{id}

`GET /m2m-applications/{id}`

Get m2m application by id

### Path parameters

- `id` `string` _(required)_

### Responses

#### `200`: Default Response

Body (`application/json`):

- `id` `string` _(required)_
- `name` `string` _(required)_
- `description` `string | null` _(required)_
- `ownerOrganizationId` `string | null` _(required)_
- `createdAt` `string <date-time>` _(required)_
- `updatedAt` `string <date-time>` _(required)_
- `roles` `object[]` _(required)_
  - `id` `string` _(required)_
  - `roleName` `string` _(required)_
  - `systemPermissions` `string[]` _(required)_
  - `isSystemRole` `boolean` _(required)_
  - `organizationId` `string | null` _(required)_
  - `createdAt` `string <date-time>` _(required)_
  - `updatedAt` `string <date-time>` _(required)_
- `organizations` `object[]` _(required)_
  - `id` `string` _(required)_
- `hasOverbroadIpWhitelist` `boolean` _(required)_

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/string
```

```ts
fetch('/api/m2m-applications/string')
```

## PUT /m2m-applications/{id}

`PUT /m2m-applications/{id}`

Update an m2m application by id

### Path parameters

- `id` `string` _(required)_

### Request body (required) (`application/json`)

- `name` `string` _(required)_
- `description` `string | null` _(required)_
- `roles` `object[]` _(required)_
  - `id` `string` _(required)_

### Responses

#### `200`: Default Response

Body (`application/json`):

- `id` `string` _(required)_
- `name` `string` _(required)_
- `description` `string | null` _(required)_
- `ownerOrganizationId` `string | null` _(required)_
- `createdAt` `string <date-time>` _(required)_
- `updatedAt` `string <date-time>` _(required)_
- `roles` `object[]` _(required)_
  - `id` `string` _(required)_
  - `roleName` `string` _(required)_
  - `systemPermissions` `string[]` _(required)_
  - `isSystemRole` `boolean` _(required)_
  - `organizationId` `string | null` _(required)_
  - `createdAt` `string <date-time>` _(required)_
  - `updatedAt` `string <date-time>` _(required)_
- `organizations` `object[]` _(required)_
  - `id` `string` _(required)_
- `hasOverbroadIpWhitelist` `boolean` _(required)_

#### `400`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/string \
  --request PUT \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "string",
  "description": "string",
  "roles": [
    {
      "id": "string"
    }
  ]
}'
```

```ts
fetch('/api/m2m-applications/string', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    name: 'string',
    description: 'string',
    roles: [
      {
        id: 'string'
      }
    ]
  })
})
```

## DELETE /m2m-applications/{id}

`DELETE /m2m-applications/{id}`

Delete an m2m application by id

### Path parameters

- `id` `string` _(required)_

### Responses

#### `204`: Default Response

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/string \
  --request DELETE
```

```ts
fetch('/api/m2m-applications/string', {
  method: 'DELETE'
})
```

## GET /m2m-applications/{id}/organizations

`GET /m2m-applications/{id}/organizations`

Get selected organizations for an m2m application

### Path parameters

- `id` `string` _(required)_

### Responses

#### `200`: Default Response

Body (`application/json`):

- `id` `string` _(required)_
- `name` `string` _(required)_

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/string/organizations
```

```ts
fetch('/api/m2m-applications/string/organizations')
```

## PUT /m2m-applications/{id}/organizations

`PUT /m2m-applications/{id}/organizations`

Replace selected organizations for an m2m application

### Path parameters

- `id` `string` _(required)_

### Request body (required) (`application/json`)

- `organizationIds` `string[]` _(required)_

### Responses

#### `200`: Default Response

Body (`application/json`):

- `id` `string` _(required)_
- `name` `string` _(required)_

#### `400`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `401`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `403`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

#### `404`: Default Response

Body (`application/json`):

- `error` `object` _(required)_
  - `code` `string` _(required)_
  - `message` `string` _(required)_
  - `issues` `unknown[]`

### Example request

```bash
curl /api/m2m-applications/string/organizations \
  --request PUT \
  --header 'Content-Type: application/json' \
  --data '{
  "organizationIds": [
    "string"
  ]
}'
```

```ts
fetch('/api/m2m-applications/string/organizations', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    organizationIds: ['string']
  })
})
```
