---
title: "Create Connection"
method: POST
path: "/v1/connections/applications"
tags: ["Connections"]
---

# Create Connection

`POST /v1/connections/applications`

Creates a new connection with validation, duplicate checking, and OAuth2 processing.

Args:
    current_user: Authenticated user profile
    session: Database session
    connection_data: Connection creation data

Returns:
    dict: Status message with connection ID or OAuth2 redirect URL

Raises:
    HTTPException: If connection already exists or validation fails

## Request body

- CreateConnection
  - `appid` string, required — Application ID or application name
  - `connection_type` 'basic_auth' | 'bearer_token' | 'api_key_auth' | 'oauth2_auth_code' | 'oauth2_implicit' | 'oauth2_password' | 'oauth2_client_creds' | 'key_value_creds', required
  - `credentials` object, required — Credentials as a JSON object
  - `shared` boolean — Whether the connection is shared, default is true

## Response `200`

Connection created successfully.

- object
  - `status` string
  - `message` string
  - `connection_id` string

## Other responses

- `400` — Bad Request: Invalid input.
- `409` — Conflict: Connection already exists.
- `422` — Validation Error

---

[API](https://skmtc.net/ibm/apis/wxo-server-api.md) · [All operations](https://skmtc.net/ibm/apis/wxo-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ibm/wxo-server-api/revisions/82c114c37196/schema)
