Vercel MCP

# Dns (*dns*) ## Overview ### Available Operations * [getRecords](#getrecords) - List existing DNS records * [createRecord](#createrecord) - Create a DNS record * [updateRecord](#updaterecord) - Update an existing DNS record * [removeRecord](#removerecord) - Delete a DNS record ## getRecords Retrieves a list of DNS records created for a domain name. By default it returns 20 records if no limit is provided. The rest can be retrieved using the pagination options. ### Example Usage ```typescript import { Vercel } from "@vercel/sdk"; const vercel = new Vercel({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const result = await vercel.dns.getRecords({ domain: "example.com", limit: "20", since: "1609499532000", until: "1612264332000", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", }); // Handle the result console.log(result); } run(); ``` ### Standalone function The standalone function version of this method: ```typescript import { VercelCore } from "@vercel/sdk/core.js"; import { dnsGetRecords } from "@vercel/sdk/funcs/dnsGetRecords.js"; // Use `VercelCore` for best tree-shaking performance. // You can create one instance of it to use across an application. const vercel = new VercelCore({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const res = await dnsGetRecords(vercel, { domain: "example.com", limit: "20", since: "1609499532000", until: "1612264332000", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", }); if (!res.ok) { throw res.error; } const { value: result } = res; // Handle the result console.log(result); } run(); ``` ### Parameters | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `request` | [models.GetRecordsRequest](../../models/getrecordsrequest.md) | :heavy_check_mark: | The request object to use for the request. | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response **Promise\<[models.GetRecordsResponseBody](../../models/getrecordsresponsebody.md)\>** ### Errors | Error Type | Status Code | Content Type | | ---------------------------- | ---------------------------- | ---------------------------- | | models.VercelBadRequestError | 400 | application/json | | models.VercelForbiddenError | 401 | application/json | | models.VercelNotFoundError | 404 | application/json | | models.SDKError | 4XX, 5XX | \*/\* | ## createRecord Creates a DNS record for a domain. ### Example Usage ```typescript import { Vercel } from "@vercel/sdk"; const vercel = new Vercel({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const result = await vercel.dns.createRecord({ domain: "example.com", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", requestBody: { type: "CNAME", ttl: 60, https: { priority: 10, target: "host.example.com", params: "alpn=h2,h3", }, comment: "used to verify ownership of domain", }, }); // Handle the result console.log(result); } run(); ``` ### Standalone function The standalone function version of this method: ```typescript import { VercelCore } from "@vercel/sdk/core.js"; import { dnsCreateRecord } from "@vercel/sdk/funcs/dnsCreateRecord.js"; // Use `VercelCore` for best tree-shaking performance. // You can create one instance of it to use across an application. const vercel = new VercelCore({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const res = await dnsCreateRecord(vercel, { domain: "example.com", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", requestBody: { type: "CNAME", ttl: 60, https: { priority: 10, target: "host.example.com", params: "alpn=h2,h3", }, comment: "used to verify ownership of domain", }, }); if (!res.ok) { throw res.error; } const { value: result } = res; // Handle the result console.log(result); } run(); ``` ### Parameters | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `request` | [models.CreateRecordRequest](../../models/createrecordrequest.md) | :heavy_check_mark: | The request object to use for the request. | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response **Promise\<[models.CreateRecordResponseBody](../../models/createrecordresponsebody.md)\>** ### Errors | Error Type | Status Code | Content Type | | ---------------------------- | ---------------------------- | ---------------------------- | | models.VercelBadRequestError | 400 | application/json | | models.VercelForbiddenError | 401 | application/json | | models.VercelNotFoundError | 404 | application/json | | models.SDKError | 4XX, 5XX | \*/\* | ## updateRecord Updates an existing DNS record for a domain name. ### Example Usage ```typescript import { Vercel } from "@vercel/sdk"; const vercel = new Vercel({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const result = await vercel.dns.updateRecord({ recordId: "rec_2qn7pzrx89yxy34vezpd31y9", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", requestBody: { name: "example-1", value: "google.com", type: "A", ttl: 60, srv: { target: "example2.com.", weight: 97604, port: 570172, priority: 199524, }, https: { priority: 35000, target: "example2.com.", }, comment: "used to verify ownership of domain", }, }); // Handle the result console.log(result); } run(); ``` ### Standalone function The standalone function version of this method: ```typescript import { VercelCore } from "@vercel/sdk/core.js"; import { dnsUpdateRecord } from "@vercel/sdk/funcs/dnsUpdateRecord.js"; // Use `VercelCore` for best tree-shaking performance. // You can create one instance of it to use across an application. const vercel = new VercelCore({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const res = await dnsUpdateRecord(vercel, { recordId: "rec_2qn7pzrx89yxy34vezpd31y9", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", requestBody: { name: "example-1", value: "google.com", type: "A", ttl: 60, srv: { target: "example2.com.", weight: 97604, port: 570172, priority: 199524, }, https: { priority: 35000, target: "example2.com.", }, comment: "used to verify ownership of domain", }, }); if (!res.ok) { throw res.error; } const { value: result } = res; // Handle the result console.log(result); } run(); ``` ### Parameters | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `request` | [models.UpdateRecordRequest](../../models/updaterecordrequest.md) | :heavy_check_mark: | The request object to use for the request. | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response **Promise\<[models.UpdateRecordResponseBody](../../models/updaterecordresponsebody.md)\>** ### Errors | Error Type | Status Code | Content Type | | ---------------------------- | ---------------------------- | ---------------------------- | | models.VercelBadRequestError | 400 | application/json | | models.VercelForbiddenError | 401 | application/json | | models.VercelNotFoundError | 404 | application/json | | models.SDKError | 4XX, 5XX | \*/\* | ## removeRecord Removes an existing DNS record from a domain name. ### Example Usage ```typescript import { Vercel } from "@vercel/sdk"; const vercel = new Vercel({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const result = await vercel.dns.removeRecord({ domain: "example.com", recordId: "rec_V0fra8eEgQwEpFhYG2vTzC3K", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", }); // Handle the result console.log(result); } run(); ``` ### Standalone function The standalone function version of this method: ```typescript import { VercelCore } from "@vercel/sdk/core.js"; import { dnsRemoveRecord } from "@vercel/sdk/funcs/dnsRemoveRecord.js"; // Use `VercelCore` for best tree-shaking performance. // You can create one instance of it to use across an application. const vercel = new VercelCore({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>", }); async function run() { const res = await dnsRemoveRecord(vercel, { domain: "example.com", recordId: "rec_V0fra8eEgQwEpFhYG2vTzC3K", teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", }); if (!res.ok) { throw res.error; } const { value: result } = res; // Handle the result console.log(result); } run(); ``` ### Parameters | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `request` | [models.RemoveRecordRequest](../../models/removerecordrequest.md) | :heavy_check_mark: | The request object to use for the request. | | `options` | RequestOptions | :heavy_minus_sign: | Used to set various options for making HTTP requests. | | `options.fetchOptions` | [RequestInit](https://developer.mozilla.org/en-US/docs/Web/API/Request/Request#options) | :heavy_minus_sign: | Options that are passed to the underlying HTTP request. This can be used to inject extra headers for examples. All `Request` options, except `method` and `body`, are allowed. | | `options.retries` | [RetryConfig](../../lib/utils/retryconfig.md) | :heavy_minus_sign: | Enables retrying HTTP requests under certain failure conditions. | ### Response **Promise\<[models.RemoveRecordResponseBody](../../models/removerecordresponsebody.md)\>** ### Errors | Error Type | Status Code | Content Type | | ---------------------------- | ---------------------------- | ---------------------------- | | models.VercelBadRequestError | 400 | application/json | | models.VercelForbiddenError | 401 | application/json | | models.VercelNotFoundError | 404 | application/json | | models.SDKError | 4XX, 5XX | \*/\* |