Skip to content
Start here

Create or update repository connection

PUT/accounts/{account_id}/builds/repos/connections

Upsert a repository connection for CI/CD integration

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Workers CI Write
Path ParametersExpand Collapse
account_id: string

Account identifier.

Body ParametersJSONExpand Collapse
provider_account_id: string

Provider account identifier.

provider_account_name: string
provider_type: "github"
repo_id: string

Repository identifier.

repo_name: string
ReturnsExpand Collapse
errors: array of { code, message }
code: optional number
message: optional string
messages: array of string
result: { created_on, deleted_on, modified_on, 6 more }
created_on: optional string
formatdate-time
deleted_on: optional string
formatdate-time
modified_on: optional string
formatdate-time
provider_account_id: optional string

Provider account identifier.

provider_account_name: optional string
provider_type: optional "github"
repo_connection_uuid: optional string

Repository connection UUID.

formatuuid
repo_id: optional string

Repository identifier.

repo_name: optional string
success: boolean
result_info: optional { count, page, per_page, 2 more }
count: optional number
page: optional number
per_page: optional number
total_count: optional number
total_pages: optional number

Create or update repository connection

curl https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/builds/repos/connections \
    -X PUT \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    -d '{
          "provider_account_id": "cloudflare",
          "provider_account_name": "Cloudflare",
          "provider_type": "github",
          "repo_id": "workers-sdk",
          "repo_name": "workers-sdk"
        }'
{
  "errors": [
    {
      "code": 12000,
      "message": "Not found"
    }
  ],
  "messages": [
    "string"
  ],
  "result": {
    "created_on": "2019-12-27T18:11:19.117Z",
    "deleted_on": "2019-12-27T18:11:19.117Z",
    "modified_on": "2019-12-27T18:11:19.117Z",
    "provider_account_id": "cloudflare",
    "provider_account_name": "Cloudflare",
    "provider_type": "github",
    "repo_connection_uuid": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "repo_id": "workers-sdk",
    "repo_name": "workers-sdk"
  },
  "success": true,
  "result_info": {
    "count": 25,
    "page": 1,
    "per_page": 50,
    "total_count": 150,
    "total_pages": 3
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 12000,
      "message": "Not found"
    }
  ],
  "messages": [
    "string"
  ],
  "result": {
    "created_on": "2019-12-27T18:11:19.117Z",
    "deleted_on": "2019-12-27T18:11:19.117Z",
    "modified_on": "2019-12-27T18:11:19.117Z",
    "provider_account_id": "cloudflare",
    "provider_account_name": "Cloudflare",
    "provider_type": "github",
    "repo_connection_uuid": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "repo_id": "workers-sdk",
    "repo_name": "workers-sdk"
  },
  "success": true,
  "result_info": {
    "count": 25,
    "page": 1,
    "per_page": 50,
    "total_count": 150,
    "total_pages": 3
  }
}