diff --git a/src/github-apps/lib/config.json b/src/github-apps/lib/config.json index d95e9587ea..8af577d7c8 100644 --- a/src/github-apps/lib/config.json +++ b/src/github-apps/lib/config.json @@ -7,5 +7,5 @@ "2022-11-28" ] }, - "sha": "8f0d8ff2f84130c7a007791b4a6899805a4ee358" + "sha": "61bae849bcbc5e760a1c32f968137838000c10de" } \ No newline at end of file diff --git a/src/rest/data/fpt-2022-11-28/schema.json b/src/rest/data/fpt-2022-11-28/schema.json index 06d8cda8af..af9548ceaf 100644 --- a/src/rest/data/fpt-2022-11-28/schema.json +++ b/src/rest/data/fpt-2022-11-28/schema.json @@ -13634,6 +13634,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -13643,8 +13644,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -15435,6 +15435,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -15444,8 +15445,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -15957,6 +15957,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -15966,8 +15967,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -18157,13 +18157,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -19732,13 +19732,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -22800,13 +22800,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -24385,13 +24385,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -147125,7 +147125,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -162511,6 +162511,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -162532,8 +162533,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "https://api.github.com", @@ -163579,6 +163579,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -163604,8 +163605,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "https://api.github.com", @@ -193727,6 +193727,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -193744,8 +193745,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -201587,6 +201587,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets\nrepository permission to use this endpoint.

\n

Example of encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example of encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example of encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example of encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -201596,8 +201597,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets\nrepository permission to use this endpoint.

\n

Example of encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example of encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example of encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example of encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -202059,6 +202059,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using\nLibSodium.

\n

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must also have Codespaces access to use this endpoint.

\n

GitHub Apps must have write access to the codespaces_user_secrets user permission and codespaces_secrets repository permission on all referenced repositories to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -202076,8 +202077,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using\nLibSodium.

\n

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must also have Codespaces access to use this endpoint.

\n

GitHub Apps must have write access to the codespaces_user_secrets user permission and codespaces_secrets repository permission on all referenced repositories to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -205236,6 +205236,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -205253,8 +205254,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "https://api.github.com", @@ -231026,6 +231026,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -231035,8 +231036,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -232672,6 +232672,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -232681,8 +232682,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -487779,7 +487779,7 @@ } ], "previews": [], - "descriptionHTML": "

Returns all rules that apply to the specified branch.

", + "descriptionHTML": "

Returns all rules that apply to the specified branch. The branch does not need to exist; rules that would apply to a\nbranch with that name will be returned. All rules that apply will be returned, regardless of the level at which they\nare configured.

", "statusCodes": [ { "httpStatusCode": "200", diff --git a/src/rest/data/ghae/schema.json b/src/rest/data/ghae/schema.json index d010d65258..b4df85e801 100644 --- a/src/rest/data/ghae/schema.json +++ b/src/rest/data/ghae/schema.json @@ -4553,6 +4553,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -4562,8 +4563,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -6354,6 +6354,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -6363,8 +6364,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -10169,13 +10169,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -11659,13 +11659,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the admin:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the admin:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -13703,13 +13703,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -15193,13 +15193,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -17267,13 +17267,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -18767,13 +18767,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -100894,7 +100894,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -116122,6 +116122,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo and repo:security_events scopes.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n", "statusCodes": [ { "httpStatusCode": "200", @@ -116143,8 +116144,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo and repo:security_events scopes.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -116262,6 +116262,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above these values. For some objects there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -116287,8 +116288,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above these values. For some objects there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", @@ -118395,6 +118395,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -118412,8 +118413,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "https://HOSTNAME/api/v3", diff --git a/src/rest/data/ghec-2022-11-28/schema.json b/src/rest/data/ghec-2022-11-28/schema.json index 58aa040f25..2d06a4a52b 100644 --- a/src/rest/data/ghec-2022-11-28/schema.json +++ b/src/rest/data/ghec-2022-11-28/schema.json @@ -14574,6 +14574,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -14583,8 +14584,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -16375,6 +16375,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16384,8 +16385,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -16897,6 +16897,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16906,8 +16907,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -23150,13 +23150,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -24725,13 +24725,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -27757,13 +27757,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -29332,13 +29332,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -32400,13 +32400,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -33985,13 +33985,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -157405,7 +157405,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -174198,6 +174198,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -174219,8 +174220,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "https://api.github.com", @@ -175266,6 +175266,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -175291,8 +175292,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "https://api.github.com", @@ -205414,6 +205414,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -205431,8 +205432,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -213274,6 +213274,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets\nrepository permission to use this endpoint.

\n

Example of encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example of encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example of encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example of encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -213283,8 +213284,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have write access to the codespaces_secrets\nrepository permission to use this endpoint.

\n

Example of encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example of encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example of encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example of encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -213746,6 +213746,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using\nLibSodium.

\n

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must also have Codespaces access to use this endpoint.

\n

GitHub Apps must have write access to the codespaces_user_secrets user permission and codespaces_secrets repository permission on all referenced repositories to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -213763,8 +213764,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

Creates or updates a secret for a user's codespace with an encrypted value. Encrypt your secret using\nLibSodium.

\n

You must authenticate using an access token with the codespace or codespace:secrets scope to use this endpoint. User must also have Codespaces access to use this endpoint.

\n

GitHub Apps must have write access to the codespaces_user_secrets user permission and codespaces_secrets repository permission on all referenced repositories to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -216923,6 +216923,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -216940,8 +216941,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "https://api.github.com", @@ -242713,6 +242713,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -242722,8 +242723,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -244359,6 +244359,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -244368,8 +244369,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "https://api.github.com", @@ -504814,7 +504814,7 @@ } ], "previews": [], - "descriptionHTML": "

Returns all rules that apply to the specified branch.

", + "descriptionHTML": "

Returns all rules that apply to the specified branch. The branch does not need to exist; rules that would apply to a\nbranch with that name will be returned. All rules that apply will be returned, regardless of the level at which they\nare configured.

", "statusCodes": [ { "httpStatusCode": "200", @@ -512192,6 +512192,7 @@ } ], "previews": [], + "descriptionHTML": "

Allows you to change a provisioned user's individual attributes. To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: If you set active:false using the replace operation (as shown in the JSON example below), it removes the user from the organization, deletes the external identity, and deletes the associated :scim_user_id.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
", "statusCodes": [ { "httpStatusCode": "200", @@ -512217,8 +512218,7 @@ "httpStatusCode": "429", "description": "

Too Many Requests

" } - ], - "descriptionHTML": "

Allows you to change a provisioned user's individual attributes. To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: If you set active:false using the replace operation (as shown in the JSON example below), it removes the user from the organization, deletes the external identity, and deletes the associated :scim_user_id.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
" + ] }, { "serverUrl": "https://api.github.com", diff --git a/src/rest/data/ghes-3.4/schema.json b/src/rest/data/ghes-3.4/schema.json index d3676e0205..17ced5bde0 100644 --- a/src/rest/data/ghes-3.4/schema.json +++ b/src/rest/data/ghes-3.4/schema.json @@ -4363,6 +4363,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -4372,8 +4373,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -6018,6 +6018,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -6027,8 +6028,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -6540,6 +6540,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -6549,8 +6550,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -12182,13 +12182,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -13667,13 +13667,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16397,13 +16397,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -17882,13 +17882,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -20638,13 +20638,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -22133,13 +22133,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -128388,7 +128388,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -142191,6 +142191,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -142212,8 +142213,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -142331,6 +142331,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -142356,8 +142357,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -144424,6 +144424,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -144441,8 +144442,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -163559,6 +163559,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -163568,8 +163569,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -165190,6 +165190,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -165199,8 +165200,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/data/ghes-3.5/schema.json b/src/rest/data/ghes-3.5/schema.json index a9620043d9..2cbdbaa9bc 100644 --- a/src/rest/data/ghes-3.5/schema.json +++ b/src/rest/data/ghes-3.5/schema.json @@ -5287,6 +5287,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -5296,8 +5297,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -6948,6 +6948,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -6957,8 +6958,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -7470,6 +7470,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -7479,8 +7480,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -13394,13 +13394,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -14879,13 +14879,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -17609,13 +17609,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -19094,13 +19094,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -21850,13 +21850,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -23345,13 +23345,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -134183,7 +134183,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -149413,6 +149413,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -149434,8 +149435,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -149553,6 +149553,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -149578,8 +149579,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -151661,6 +151661,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -151678,8 +151679,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -170834,6 +170834,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -170843,8 +170844,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -172471,6 +172471,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -172480,8 +172481,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/data/ghes-3.6/schema.json b/src/rest/data/ghes-3.6/schema.json index 4800d672e5..ea6e5c75a2 100644 --- a/src/rest/data/ghes-3.6/schema.json +++ b/src/rest/data/ghes-3.6/schema.json @@ -5704,6 +5704,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -5713,8 +5714,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -7371,6 +7371,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -7380,8 +7381,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -7893,6 +7893,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -7902,8 +7903,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -13923,13 +13923,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -15490,13 +15490,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -18302,13 +18302,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -19869,13 +19869,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -22707,13 +22707,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -24284,13 +24284,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -136700,7 +136700,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -152006,6 +152006,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -152027,8 +152028,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -152146,6 +152146,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -152171,8 +152172,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -154260,6 +154260,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -154277,8 +154278,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -173621,6 +173621,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -173630,8 +173631,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -175264,6 +175264,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -175273,8 +175274,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -197839,6 +197839,7 @@ } ], "previews": [], + "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
", "statusCodes": [ { "httpStatusCode": "200", @@ -197872,8 +197873,7 @@ "httpStatusCode": "500", "description": "

Internal server error

" } - ], - "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/data/ghes-3.7/schema.json b/src/rest/data/ghes-3.7/schema.json index a8aa1d6ab5..1e807703f6 100644 --- a/src/rest/data/ghes-3.7/schema.json +++ b/src/rest/data/ghes-3.7/schema.json @@ -6470,6 +6470,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -6479,8 +6480,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -8140,6 +8140,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -8149,8 +8150,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -8662,6 +8662,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -8671,8 +8672,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -14703,13 +14703,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16278,13 +16278,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -19098,13 +19098,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -20673,13 +20673,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -23519,13 +23519,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -25104,13 +25104,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -137671,7 +137671,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -154426,6 +154426,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -154447,8 +154448,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -154566,6 +154566,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -154591,8 +154592,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -156683,6 +156683,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -156700,8 +156701,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -176072,6 +176072,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -176081,8 +176082,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -177718,6 +177718,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -177727,8 +177728,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -200650,6 +200650,7 @@ } ], "previews": [], + "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
", "statusCodes": [ { "httpStatusCode": "200", @@ -200683,8 +200684,7 @@ "httpStatusCode": "500", "description": "

Internal server error

" } - ], - "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/data/ghes-3.8/schema.json b/src/rest/data/ghes-3.8/schema.json index 0dfa3d685d..1b15acf32d 100644 --- a/src/rest/data/ghes-3.8/schema.json +++ b/src/rest/data/ghes-3.8/schema.json @@ -14661,6 +14661,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -14670,8 +14671,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16331,6 +16331,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16340,8 +16341,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16853,6 +16853,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16862,8 +16863,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -22894,13 +22894,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -24469,13 +24469,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -27289,13 +27289,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -28864,13 +28864,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -31710,13 +31710,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -33295,13 +33295,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -152015,7 +152015,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -168808,6 +168808,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -168829,8 +168830,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -168948,6 +168948,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -168973,8 +168974,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file15
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -171081,6 +171081,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -171098,8 +171099,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -196859,6 +196859,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -196868,8 +196869,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -198505,6 +198505,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -198514,8 +198515,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -221674,6 +221674,7 @@ } ], "previews": [], + "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
", "statusCodes": [ { "httpStatusCode": "200", @@ -221707,8 +221708,7 @@ "httpStatusCode": "500", "description": "

Internal server error

" } - ], - "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/data/ghes-3.9-2022-11-28/schema.json b/src/rest/data/ghes-3.9-2022-11-28/schema.json index 97917697b8..d41e6dc432 100644 --- a/src/rest/data/ghes-3.9-2022-11-28/schema.json +++ b/src/rest/data/ghes-3.9-2022-11-28/schema.json @@ -14661,6 +14661,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -14670,8 +14671,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the secrets organization permission to\nuse this endpoint.

\n

*Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16462,6 +16462,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16471,8 +16472,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -16984,6 +16984,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -16993,8 +16994,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an environment secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the secrets repository permission to use\nthis endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -23025,13 +23025,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/enterprises/octo-enterprise --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -24600,13 +24600,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an enterprise. The token expires after one hour.

\n

You must authenticate using an access token with the manage_runners:enterprise scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an enterprise, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -27420,13 +27420,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -28995,13 +28995,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script to remove a self-hosted runner from an organization. The token expires after one hour.

\n

You must authenticate using an access token with the admin:org scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from an organization, replace TOKEN with the remove token provided by this\nendpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -31841,13 +31841,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to the config script. The token expires after one hour. You must authenticate\nusing an access token with the repo scope to use this endpoint.

\n

Example using registration token

\n

Configure your self-hosted runner, replacing TOKEN with the registration token provided by this endpoint.

\n
./config.sh --url https://github.com/octo-org/octo-repo-artifacts --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -33426,13 +33426,13 @@ } ], "previews": [], + "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
", "statusCodes": [ { "httpStatusCode": "201", "description": "

Created

" } - ], - "descriptionHTML": "

Returns a token that you can pass to remove a self-hosted runner from a repository. The token expires after one hour.\nYou must authenticate using an access token with the repo scope to use this endpoint.

\n

Example using remove token

\n

To remove your self-hosted runner from a repository, replace TOKEN with the remove token provided by this endpoint.

\n
./config.sh remove --token TOKEN\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -152443,7 +152443,7 @@ } ], "previews": [], - "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

", + "descriptionHTML": "

Triggers GitHub to rerequest an existing check run, without pushing new code to a repository. This endpoint will trigger the check_run webhook event with the action rerequested. When a check run is rerequested, its status is reset to queued and the conclusion is cleared.

\n

To rerequest a check run, your GitHub App must have the checks:read permission on a private repository or pull access to a public repository.

\n

For more information about how to re-run GitHub Actions jobs, see \"Re-run a job from a workflow run\".

", "statusCodes": [ { "httpStatusCode": "201", @@ -169236,6 +169236,7 @@ } ], "previews": [], + "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

", "statusCodes": [ { "httpStatusCode": "200", @@ -169257,8 +169258,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Deletes a specified code scanning analysis from a repository. For\nprivate repositories, you must use an access token with the repo scope. For public repositories,\nyou must use an access token with public_repo scope.\nGitHub Apps must have the security_events write permission to use this endpoint.

\n

You can delete one analysis at a time.\nTo delete a series of analyses, start with the most recent analysis and work backwards.\nConceptually, the process is similar to the undo function in a text editor.

\n

When you list the analyses for a repository,\none or more will be identified as deletable in the response:

\n
\"deletable\": true\n
\n

An analysis is deletable when it's the most recent in a set of analyses.\nTypically, a repository will have multiple sets of analyses\nfor each enabled code scanning tool,\nwhere a set is determined by a unique combination of analysis values:

\n\n

If you attempt to delete an analysis that is not the most recent in a set,\nyou'll get a 400 response with the message:

\n
Analysis specified is not deletable.\n
\n

The response from a successful DELETE operation provides you with\ntwo alternative URLs for deleting the next analysis in the set:\nnext_analysis_url and confirm_delete_url.\nUse the next_analysis_url URL if you want to avoid accidentally deleting the final analysis\nin a set. This is a useful option if you want to preserve at least one analysis\nfor the specified tool in your repository.\nUse the confirm_delete_url URL if you are content to remove all analyses for a tool.\nWhen you delete the last analysis in a set, the value of next_analysis_url and confirm_delete_url\nin the 200 response is null.

\n

As an example of the deletion process,\nlet's imagine that you added a workflow that configured a particular code scanning tool\nto analyze the code in a repository. This tool has added 15 analyses:\n10 on the default branch, and another 5 on a topic branch.\nYou therefore have two separate sets of analyses for this tool.\nYou've now decided that you want to remove all of the analyses for the tool.\nTo do this you must make 15 separate deletion requests.\nTo start, you must find an analysis that's identified as deletable.\nEach set of analyses always has one that's identified as deletable.\nHaving found the deletable analysis for one of the two sets,\ndelete this analysis and then continue deleting the next analysis in the set until they're all deleted.\nThen repeat the process for the second set.\nThe procedure therefore consists of a nested loop:

\n

Outer loop:

\n\n

The above process assumes that you want to remove all trace of the tool's analyses from the GitHub user interface, for the specified repository, and it therefore uses the confirm_delete_url value. Alternatively, you could use the next_analysis_url value, which would leave the last analysis in each set undeleted to avoid removing a tool's analysis entirely.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -169625,6 +169625,7 @@ } ], "previews": [], + "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

", "statusCodes": [ { "httpStatusCode": "202", @@ -169650,8 +169651,7 @@ "httpStatusCode": "503", "description": "

Service unavailable

" } - ], - "descriptionHTML": "

Uploads SARIF data containing the results of a code scanning analysis to make the results available in a repository. You must use an access token with the security_events scope to use this endpoint for private repositories. You can also use tokens with the public_repo scope for public repositories only. GitHub Apps must have the security_events write permission to use this endpoint.

\n

There are two places where you can upload code scanning results.

\n\n

You must compress the SARIF-formatted analysis data that you want to upload, using gzip, and then encode it as a Base64 format string. For example:

\n
gzip -c analysis-data.sarif | base64 -w0\n
\n
\nSARIF upload supports a maximum number of entries per the following data objects, and an analysis will be rejected if any of these objects is above its maximum value. For some objects, there are additional values over which the entries will be ignored while keeping the most important entries whenever applicable.\nTo get the most out of your analysis when it includes data above the supported limits, try to optimize the analysis configuration. For example, for the CodeQL tool, identify and remove the most noisy queries.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
SARIF dataMaximum valuesAdditional limits
Runs per file20
Results per run25,000Only the top 5,000 results will be included, prioritized by severity.
Rules per run25,000
Tool extensions per run100
Thread Flow Locations per result10,000Only the top 1,000 Thread Flow Locations will be included, using prioritization.
Location per result1,000Only 100 locations will be included.
Tags per rule20Only 10 tags will be included.
\n

The 202 Accepted response includes an id value.\nYou can use this ID to check the status of the upload by using it in the /sarifs/{sarif_id} endpoint.\nFor more information, see \"Get information about a SARIF upload.\"

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -171758,6 +171758,7 @@ } ], "previews": [], + "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

", "statusCodes": [ { "httpStatusCode": "201", @@ -171775,8 +171776,7 @@ "httpStatusCode": "422", "description": "

Validation failed, or the endpoint has been spammed.

" } - ], - "descriptionHTML": "

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See \"Secondary rate limits\" and \"Dealing with secondary rate limits\" for details.

\n

Adding an outside collaborator may be restricted by enterprise administrators. For more information, see \"Enforcing repository management policies in your enterprise.\"

\n

For more information on permission levels, see \"Repository permission levels for an organization\". There are restrictions on which permissions can be granted to organization members when an organization base role is in place. In this case, the permission being given must be equal to or higher than the org base permission. Otherwise, the request will fail with:

\n
Cannot assign {member} permission of {role name}\n
\n

Note that, if you choose not to pass any parameters, you'll need to set Content-Length to zero when calling out to this endpoint. For more information, see \"HTTP verbs.\"

\n

The invitee will receive a notification that they have been invited to the repository, which they must accept or decline. They may do this via the notifications page, the email they receive, or by using the repository invitations API endpoints.

\n

Updating an existing collaborator's permission level

\n

The endpoint can also be used to change the permissions of an existing collaborator without first removing and re-adding the collaborator. To change the permissions, use the same endpoint and pass a different permission parameter. The response will be a 204, with no other indication that the permission level changed.

\n

Rate limits

\n

You are limited to sending 50 invitations to a repository per 24 hour period. Note there is no limit if you are inviting organization members to an organization repository.

" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -197536,6 +197536,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -197545,8 +197546,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates an organization secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the admin:org scope to use this endpoint. GitHub Apps must have the dependabot_secrets organization\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -199182,6 +199182,7 @@ } ], "previews": [], + "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
", "statusCodes": [ { "httpStatusCode": "201", @@ -199191,8 +199192,7 @@ "httpStatusCode": "204", "description": "

Response when updating a secret

" } - ], - "descriptionHTML": "

Creates or updates a repository secret with an encrypted value. Encrypt your secret using\nLibSodium. You must authenticate using an access\ntoken with the repo scope to use this endpoint. GitHub Apps must have the dependabot_secrets repository\npermission to use this endpoint.

\n

Example encrypting a secret using Node.js

\n

Encrypt your secret using the libsodium-wrappers library.

\n
const sodium = require('libsodium-wrappers')\nconst secret = 'plain-text-secret' // replace with the secret you want to encrypt\nconst key = 'base64-encoded-public-key' // replace with the Base64 encoded public key\n\n//Check if libsodium is ready and then proceed.\nsodium.ready.then(() => {\n  // Convert Secret & Base64 key to Uint8Array.\n  let binkey = sodium.from_base64(key, sodium.base64_variants.ORIGINAL)\n  let binsec = sodium.from_string(secret)\n\n  //Encrypt the secret using LibSodium\n  let encBytes = sodium.crypto_box_seal(binsec, binkey)\n\n  // Convert encrypted Uint8Array to Base64\n  let output = sodium.to_base64(encBytes, sodium.base64_variants.ORIGINAL)\n\n  console.log(output)\n});\n
\n

Example encrypting a secret using Python

\n

Encrypt your secret using pynacl with Python 3.

\n
from base64 import b64encode\nfrom nacl import encoding, public\n\ndef encrypt(public_key: str, secret_value: str) -> str:\n  \"\"\"Encrypt a Unicode string using the public key.\"\"\"\n  public_key = public.PublicKey(public_key.encode(\"utf-8\"), encoding.Base64Encoder())\n  sealed_box = public.SealedBox(public_key)\n  encrypted = sealed_box.encrypt(secret_value.encode(\"utf-8\"))\n  return b64encode(encrypted).decode(\"utf-8\")\n
\n

Example encrypting a secret using C#

\n

Encrypt your secret using the Sodium.Core package.

\n
var secretValue = System.Text.Encoding.UTF8.GetBytes(\"mySecret\");\nvar publicKey = Convert.FromBase64String(\"2Sg8iYjAxxmI2LvUXpJjkYrMxURPc8r+dB7TJyvvcCU=\");\n\nvar sealedPublicKeyBox = Sodium.SealedPublicKeyBox.Create(secretValue, publicKey);\n\nConsole.WriteLine(Convert.ToBase64String(sealedPublicKeyBox));\n
\n

Example encrypting a secret using Ruby

\n

Encrypt your secret using the rbnacl gem.

\n
require \"rbnacl\"\nrequire \"base64\"\n\nkey = Base64.decode64(\"+ZYvJDZMHUfBkJdyq5Zm9SKqeuBQ4sj+6sfjlH4CgG0=\")\npublic_key = RbNaCl::PublicKey.new(key)\n\nbox = RbNaCl::Boxes::Sealed.from_public_key(public_key)\nencrypted_secret = box.encrypt(\"my_secret\")\n\n# Print the base64 encoded secret\nputs Base64.strict_encode64(encrypted_secret)\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", @@ -223114,6 +223114,7 @@ } ], "previews": [], + "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
", "statusCodes": [ { "httpStatusCode": "200", @@ -223147,8 +223148,7 @@ "httpStatusCode": "500", "description": "

Internal server error

" } - ], - "descriptionHTML": "

Note: The SCIM API endpoints for enterprise accounts are currently in private beta and are subject to change.

\n

Update a provisioned user's individual attributes.

\n

To change a user's values, you must provide a specific Operations JSON format that contains at least one of the add, remove, or replace operations. For examples and more information on the SCIM operations format, see the SCIM specification.

\n

Note: Complicated SCIM path selectors that include filters are not supported. For example, a path selector defined as \"path\": \"emails[type eq \\\"work\\\"]\" will not work.

\n

Warning: Setting active: false will suspend a user and obfuscate the user handle and user email. Since the implementation is a generic SCIM implementation and does not differentiate yet between different IdP providers, for Okta, the user GDPR data will not be purged and the credentials will not be removed.

\n
{\n  \"Operations\":[{\n    \"op\":\"replace\",\n    \"value\":{\n      \"active\":false\n    }\n  }]\n}\n
" + ] }, { "serverUrl": "http(s)://HOSTNAME/api/v3", diff --git a/src/rest/lib/config.json b/src/rest/lib/config.json index a7fd15121a..54e0915918 100644 --- a/src/rest/lib/config.json +++ b/src/rest/lib/config.json @@ -33,5 +33,5 @@ ] } }, - "sha": "8f0d8ff2f84130c7a007791b4a6899805a4ee358" + "sha": "61bae849bcbc5e760a1c32f968137838000c10de" } \ No newline at end of file diff --git a/src/webhooks/lib/config.json b/src/webhooks/lib/config.json index da3271e819..8925b6752b 100644 --- a/src/webhooks/lib/config.json +++ b/src/webhooks/lib/config.json @@ -1,3 +1,3 @@ { - "sha": "8f0d8ff2f84130c7a007791b4a6899805a4ee358" + "sha": "61bae849bcbc5e760a1c32f968137838000c10de" } \ No newline at end of file