Documentation / API Reference / Delete an analytics connection
Delete an analytics connection For hosted connections, delete the linked analytics project and invalidate its keys before removing the saved connection. Stored events expire under the collector retention policy. For custom connections, remove only the saved credentials and connection; the remote server, project and data remain unchanged. Only team owners can delete connections. An uncertain remote result preserves the connection for reconciliation.
DELETE
/projects/{projectId} /analytics/connections/{connectionId}
Authorization Authorization
header
string
required
Enter the team access token with the Bearer prefix, e.g. "Bearer team_access_token"
Path Parameters The owning Chunkify project ID.
connectionId
string
required
The saved analytics connection ID.
Responses 204 400 401 403 404 409 429 503
application/json Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
Invalid request parameters
type
"ValidationError"
string
required
Type indicates the error category
Available options:
ValidationError
status
"error"
string
required
Status indicates the response status "error"
Validation error.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
Authentication error: invalid token or subscription inactive
type
"AuthenticationError"
string
required
Type indicates the error category
Available options:
AuthenticationError
status
"error"
string
required
Status indicates the response status "error"
Authentication error.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
Unauthorized to perform this action
type
"ForbiddenError"
string
required
Type indicates the error category
Available options:
ForbiddenError
status
"error"
string
required
Status indicates the response status "error"
Forbidden error.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
Ressource not found
type
"NotFoundError"
string
required
Type indicates the error category
Available options:
NotFoundError
status
"error"
string
required
Status indicates the response status "error"
NotFound error.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
source_unavailable: the original video is no longer accessible
type
"ConflictError"
string
required
Type indicates the error category
Available options:
ConflictError
status
"error"
string
required
Status indicates the response status "error"
The name is already used, setup is incomplete, or deletion needs reconciliation.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
Rate limit exceeded
type
"TooManyRequestsError"
string
required
Type indicates the error category
Available options:
TooManyRequestsError
status
"error"
string
required
Status indicates the response status "error"
TooManyRequests error.
application/json Error response details
Show error properties
Code is the HTTP status code
Message is a human-readable error description
Examples:
The service is temporarily unavailable; retry the request
type
"ServiceUnavailableError"
string
required
Type indicates the error category
Available options:
ServiceUnavailableError
status
"error"
string
required
Status indicates the response status "error"
The analytics server is unavailable or returned an incompatible response.
# Delete an analytics connection
> For hosted connections, delete the linked analytics project and invalidate its keys before removing the saved connection. Stored events expire under the collector retention policy. For custom connections, remove only the saved credentials and connection; the remote server, project and data remain unchanged. Only team owners can delete connections. An uncertain remote result preserves the connection for reconciliation.
```json
{
"path": "/projects/{projectId}/analytics/connections/{connectionId}",
"method": "delete",
"schema": {
"description": "For hosted connections, delete the linked analytics project and invalidate its keys before removing the saved connection. Stored events expire under the collector retention policy. For custom connections, remove only the saved credentials and connection; the remote server, project and data remain unchanged. Only team owners can delete connections. An uncertain remote result preserves the connection for reconciliation.",
"operationId": "deleteAnalyticsConnection",
"parameters": [
{
"description": "The owning Chunkify project ID.",
"in": "path",
"name": "projectId",
"required": true,
"schema": {
"type": "string"
}
},
{
"description": "The saved analytics connection ID.",
"in": "path",
"name": "connectionId",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "Success."
},
"400": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorValidation"
}
}
},
"description": "Validation error."
},
"401": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorAuthentication"
}
}
},
"description": "Authentication error."
},
"403": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorForbidden"
}
}
},
"description": "Forbidden error."
},
"404": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorNotFound"
}
}
},
"description": "NotFound error."
},
"409": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorConflict"
}
}
},
"description": "The name is already used, setup is incomplete, or deletion needs reconciliation."
},
"429": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorTooManyRequests"
}
}
},
"description": "TooManyRequests error."
},
"503": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ResponseErrorServiceUnavailable"
}
}
},
"description": "The analytics server is unavailable or returned an incompatible response."
}
},
"security": [
{
"TeamAccessToken": []
}
],
"summary": "Delete an analytics connection",
"tags": [
"Analytics Connections"
],
"x-codeSamples": [
{
"lang": "typescript",
"source": "import Chunkify from '@chunkify/chunkify';\n\nconst client = new Chunkify({\n teamAccessToken: 'My Team Access Token',\n});\n\nconst result = await client.projects.analytics.connections.delete(\n 'proj_example',\n 'anc_example',\n);\n"
},
{
"lang": "python",
"source": "from chunkify import Chunkify\n\nclient = Chunkify(\n team_access_token=\"My Team Access Token\",\n)\n\nresult = client.projects.analytics.connections.delete(\n \"proj_example\",\n \"anc_example\",\n)\n"
},
{
"lang": "php",
"source": "\u003c?php\n\nuse Chunkify\\Client;\n\n$client = new Client(\n teamAccessToken: 'My Team Access Token',\n);\n\n$result = $client-\u003eprojects-\u003eanalytics-\u003econnections-\u003edelete(\n 'proj_example',\n 'anc_example',\n);\n"
},
{
"lang": "golang",
"source": "package main\n\nimport (\n\t\"context\"\n\t\"github.com/chunkifydev/chunkify-go\"\n\t\"github.com/chunkifydev/chunkify-go/option\"\n)\n\nfunc main() {\n\tclient := chunkify.NewClient(\n\t\toption.WithTeamAccessToken(\"My Team Access Token\"),\n\t)\n\terr := client.Projects.Analytics.Connections.Delete(\n\t\tcontext.TODO(),\n\t\t\"proj_example\",\n\t\t\"anc_example\",\n\t)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n}\n"
}
]
}
}
```
```json #/components/schemas/ResponseErrorValidation
{
"properties": {
"error": {
"properties": {
"code": {
"const": 400,
"description": "Code is the HTTP status code",
"examples": [
400
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"Invalid request parameters"
],
"type": "string"
},
"type": {
"const": "ValidationError",
"description": "Type indicates the error category",
"enum": [
"ValidationError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
]
}
```
```json #/components/schemas/ResponseErrorAuthentication
{
"description": "Error response",
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 401,
"description": "Code is the HTTP status code",
"examples": [
401
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"Authentication error: invalid token or subscription inactive"
],
"type": "string"
},
"type": {
"const": "AuthenticationError",
"description": "Type indicates the error category",
"enum": [
"AuthenticationError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
],
"type": "object"
}
```
```json #/components/schemas/ResponseErrorForbidden
{
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 403,
"description": "Code is the HTTP status code",
"examples": [
403
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"Unauthorized to perform this action"
],
"type": "string"
},
"type": {
"const": "ForbiddenError",
"description": "Type indicates the error category",
"enum": [
"ForbiddenError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
]
}
```
```json #/components/schemas/ResponseErrorNotFound
{
"description": "Error response",
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 404,
"description": "Code is the HTTP status code",
"examples": [
404
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"Ressource not found"
],
"type": "string"
},
"type": {
"const": "NotFoundError",
"description": "Type indicates the error category",
"enum": [
"NotFoundError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
],
"type": "object"
}
```
```json #/components/schemas/ResponseErrorConflict
{
"description": "Error response",
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 409,
"description": "Code is the HTTP status code",
"examples": [
409
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"source_unavailable: the original video is no longer accessible"
],
"type": "string"
},
"type": {
"const": "ConflictError",
"description": "Type indicates the error category",
"enum": [
"ConflictError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
],
"type": "object"
}
```
```json #/components/schemas/ResponseErrorTooManyRequests
{
"description": "Error response",
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 429,
"description": "Code is the HTTP status code",
"examples": [
429
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"Rate limit exceeded"
],
"type": "string"
},
"type": {
"const": "TooManyRequestsError",
"description": "Type indicates the error category",
"enum": [
"TooManyRequestsError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
],
"type": "object"
}
```
```json #/components/schemas/ResponseErrorServiceUnavailable
{
"properties": {
"error": {
"description": "Error response details",
"properties": {
"code": {
"const": 503,
"description": "Code is the HTTP status code",
"examples": [
503
],
"type": "integer"
},
"message": {
"description": "Message is a human-readable error description",
"examples": [
"The service is temporarily unavailable; retry the request"
],
"type": "string"
},
"type": {
"const": "ServiceUnavailableError",
"description": "Type indicates the error category",
"enum": [
"ServiceUnavailableError"
],
"type": "string"
}
},
"required": [
"type",
"code",
"message"
],
"type": "object"
},
"status": {
"const": "error",
"description": "Status indicates the response status \"error\"",
"type": "string"
}
},
"required": [
"status",
"error"
]
}
```