Skip to content

Commit

Permalink
Merge branch 'main' into alee/keys-api
Browse files Browse the repository at this point in the history
  • Loading branch information
lee-aaron committed Feb 28, 2025
2 parents daaf925 + 5285969 commit 289b0bf
Show file tree
Hide file tree
Showing 111 changed files with 5,478 additions and 68 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/spec.pr-comment-trigger.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ jobs:
if: steps.is-digitalocean-member.outputs.result == 'true'
run: make bundle

- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
if: steps.is-digitalocean-member.outputs.result == 'true'
with:
name: openapi-bundled
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ Once the prerequisites are installed, the source can be downloaded and the
dependencies can be installed:

```sh
git clone [email protected]:digitalocean/apiv2-openapi.git
cd apiv2-openapi
git clone [email protected]:digitalocean/openapi.git
cd openapi
make preview
```

Expand Down
2 changes: 1 addition & 1 deletion docs-preview/redoc-index.html
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@
document.querySelector('redoc').setAttribute('spec-url', specUrl);
</script>

<script src="https://cdn.jsdelivr.net/npm/redoc@2.0.0-rc.50/bundles/redoc.standalone.js"> </script>
<script src="https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js"> </script>
</body>

</html>
209 changes: 198 additions & 11 deletions specification/DigitalOcean-public.v2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ tags:
create, or delete CDN Endpoints as well as purge cached content. To use a
custom subdomain to access the CDN Endpoint, provide the ID of a
DigitalOcean managed TLS certificate and the fully qualified domain name
for the custom subdomain.
for the custom subdomain.
CDN endpoints have a rate limit of five requests per 10 seconds.
Expand Down Expand Up @@ -146,7 +146,7 @@ tags:
simplifies the creation and management of highly available database clusters. Currently, it
offers support for [PostgreSQL](http://docs.digitalocean.com/products/databases/postgresql/),
[Redis](https://docs.digitalocean.com/products/databases/redis/),
[MySQL](https://docs.digitalocean.com/products/databases/mysql/),
[MySQL](https://docs.digitalocean.com/products/databases/mysql/),
[MongoDB](https://docs.digitalocean.com/products/databases/mongodb/), and
[OpenSearch](https://docs.digitalocean.com/products/databases/opensearch/).
Expand All @@ -162,7 +162,7 @@ tags:
which is used in some of the following requests. Each slug denotes the node's identifier,
CPU count, and amount of RAM, in that order.
For a list of currently available database slugs and options, use the `/v2/databases/options` endpoint or use the
For a list of currently available database slugs and options, use the `/v2/databases/options` endpoint or use the
`doctl databases options` [command](https://docs.digitalocean.com/reference/doctl/reference/databases/options).
- name: Domain Records
Expand Down Expand Up @@ -291,6 +291,14 @@ tags:
The Serverless Functions API currently only supports creating and managing namespaces.
- name: GenAI Platform (Public Preview)
description: |-
**The GenAI Platform API is in [public preview](https://docs.digitalocean.com/platform/product-lifecycle/#public-preview) for select customers.**
The API lets you build GPU-powered AI agents with pre-built or custom foundation models, function and agent routes, and RAG pipelines with knowledge bases.
- name: Image Actions
description: |-
Image actions are commands that can be given to a DigitalOcean image. In
Expand Down Expand Up @@ -492,9 +500,9 @@ tags:
- name: VPC Peerings
description: |-
[VPC Peerings](https://docs.digitalocean.com/products/networking/vpc/how-to/create-peering/)
join two VPC networks with a secure, private connection. This allows
resources in those networks to connect to each other's private IP addresses
[VPC Peerings](https://docs.digitalocean.com/products/networking/vpc/how-to/create-peering/)
join two VPC networks with a secure, private connection. This allows
resources in those networks to connect to each other's private IP addresses
as if they were in the same network.
- name: VPCs
Expand Down Expand Up @@ -779,7 +787,7 @@ paths:
$ref: 'resources/databases/databases_list_replicas.yml'
post:
$ref: 'resources/databases/databases_create_replica.yml'

/v2/databases/{database_cluster_uuid}/events:
get:
$ref: 'resources/databases/databases_events_logs.yml'
Expand Down Expand Up @@ -867,7 +875,7 @@ paths:
$ref: 'resources/databases/databases_update_kafka_topic.yml'
delete:
$ref: 'resources/databases/databases_delete_kafka_topic.yml'

/v2/databases/{database_cluster_uuid}/logsink:
get:
$ref: 'resources/databases/databases_list_logsink.yml'
Expand All @@ -888,15 +896,15 @@ paths:
$ref: 'resources/databases/databases_get_cluster_metrics_credentials.yml'
put:
$ref: 'resources/databases/databases_update_cluster_metrics_credentials.yml'

/v2/databases/{database_cluster_uuid}/indexes:
get:
$ref: 'resources/databases/databases_list_opensearch_indexes.yml'

/v2/databases/{database_cluster_uuid}/indexes/{index_name}:
delete:
$ref: 'resources/databases/databases_delete_opensearch_index.yml'

/v2/domains:
get:
$ref: 'resources/domains/domains_list.yml'
Expand Down Expand Up @@ -1830,6 +1838,185 @@ paths:
$ref: 'resources/uptime/delete_alert.yml'





/v2/gen-ai/agents:
post:
$ref: 'resources/gen-ai/genai_create_agent.yml'

get:
$ref: 'resources/gen-ai/genai_list_agents.yml'


/v2/gen-ai/agents/{agent_uuid}/api_keys:
get:
$ref: 'resources/gen-ai/genai_list_agent_api_keys.yml'

post:
$ref: 'resources/gen-ai/genai_create_agent_api_key.yml'


/v2/gen-ai/agents/{agent_uuid}/api_keys/{api_key_uuid}:
delete:
$ref: 'resources/gen-ai/genai_delete_agent_api_key.yml'

put:
$ref: 'resources/gen-ai/genai_update_agent_api_key.yml'


/v2/gen-ai/agents/{agent_uuid}/api_keys/{api_key_uuid}/regenerate:
put:
$ref: 'resources/gen-ai/genai_regenerate_agent_api_key.yml'


/v2/gen-ai/agents/{agent_uuid}/functions:
post:
$ref: 'resources/gen-ai/genai_attach_agent_function.yml'


/v2/gen-ai/agents/{agent_uuid}/functions/{function_uuid}:
put:
$ref: 'resources/gen-ai/genai_update_agent_function.yml'

delete:
$ref: 'resources/gen-ai/genai_detach_agent_function.yml'


/v2/gen-ai/agents/{agent_uuid}/knowledge_bases/{knowledge_base_uuid}:
delete:
$ref: 'resources/gen-ai/genai_detach_knowledge_base.yml'

post:
$ref: 'resources/gen-ai/genai_attach_knowledge_base.yml'


/v2/gen-ai/agents/{parent_agent_uuid}/child_agents/{child_agent_uuid}:
delete:
$ref: 'resources/gen-ai/genai_detach_agent.yml'

post:
$ref: 'resources/gen-ai/genai_attach_agent.yml'

put:
$ref: 'resources/gen-ai/genai_update_attached_agent.yml'


/v2/gen-ai/agents/{uuid}:
delete:
$ref: 'resources/gen-ai/genai_delete_agent.yml'

get:
$ref: 'resources/gen-ai/genai_get_agent.yml'

put:
$ref: 'resources/gen-ai/genai_update_agent.yml'


/v2/gen-ai/agents/{uuid}/child_agents:
get:
$ref: 'resources/gen-ai/genai_get_agent_children.yml'


/v2/gen-ai/agents/{uuid}/deployment_visibility:
put:
$ref: 'resources/gen-ai/genai_update_agent_deployment_visibility.yml'


/v2/gen-ai/anthropic/keys:
get:
$ref: 'resources/gen-ai/genai_list_anthropic_api_keys.yml'

post:
$ref: 'resources/gen-ai/genai_create_anthropic_api_key.yml'


/v2/gen-ai/anthropic/keys/{api_key_uuid}:
delete:
$ref: 'resources/gen-ai/genai_delete_anthropic_api_key.yml'

get:
$ref: 'resources/gen-ai/genai_get_anthropic_api_key.yml'

put:
$ref: 'resources/gen-ai/genai_update_anthropic_api_key.yml'


/v2/gen-ai/anthropic/keys/{uuid}/agents:
get:
$ref: 'resources/gen-ai/genai_list_agents_by_anthropic_key.yml'


/v2/gen-ai/indexing_jobs:
get:
$ref: 'resources/gen-ai/genai_list_indexing_jobs.yml'

post:
$ref: 'resources/gen-ai/genai_create_indexing_job.yml'


/v2/gen-ai/indexing_jobs/{indexing_job_uuid}/data_sources:
get:
$ref: 'resources/gen-ai/genai_list_indexing_job_data_sources.yml'


/v2/gen-ai/indexing_jobs/{uuid}:
get:
$ref: 'resources/gen-ai/genai_get_indexing_job.yml'


/v2/gen-ai/indexing_jobs/{uuid}/cancel:
put:
$ref: 'resources/gen-ai/genai_cancel_indexing_job.yml'


/v2/gen-ai/knowledge_bases:
get:
$ref: 'resources/gen-ai/genai_list_knowledge_bases.yml'

post:
$ref: 'resources/gen-ai/genai_create_knowledge_base.yml'


/v2/gen-ai/knowledge_bases/{knowledge_base_uuid}/data_sources:
get:
$ref: 'resources/gen-ai/genai_list_knowledge_base_data_sources.yml'

post:
$ref: 'resources/gen-ai/genai_create_knowledge_base_data_source.yml'


/v2/gen-ai/knowledge_bases/{knowledge_base_uuid}/data_sources/{data_source_uuid}:
delete:
$ref: 'resources/gen-ai/genai_delete_knowledge_base_data_source.yml'


/v2/gen-ai/knowledge_bases/{uuid}:
put:
$ref: 'resources/gen-ai/genai_update_knowledge_base.yml'

delete:
$ref: 'resources/gen-ai/genai_delete_knowledge_base.yml'

get:
$ref: 'resources/gen-ai/genai_get_knowledge_base.yml'


/v2/gen-ai/models:
get:
$ref: 'resources/gen-ai/genai_list_models.yml'


/v2/gen-ai/regions:
get:
$ref: 'resources/gen-ai/genai_list_datacenter_regions.yml'







components:
securitySchemes:
bearer_auth:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ x-codeSamples:

security:
- bearer_auth:
- '1click:create'
- 'addon:create'
2 changes: 1 addition & 1 deletion specification/resources/1-clicks/oneClicks_list.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,5 +38,5 @@ x-codeSamples:

security:
- bearer_auth:
- '1click:read'
- 'addon:read'

4 changes: 4 additions & 0 deletions specification/resources/apps/models/app_maintenance_spec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,7 @@ properties:
type: boolean
description: Indicates whether the app should be archived. Setting this to true implies that enabled is set to true. Note that this feature is currently in closed beta.
example: true
offline_page_url:
type: string
description: A custom offline page to display when maintenance mode is enabled or the app is archived.
example: https://example.com/offline.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ description: >-
To start an online migration, send a PUT request to
`/v2/databases/$DATABASE_ID/online-migration` endpoint. Migrating a cluster
establishes a connection with an existing cluster and replicates its
contents to the target cluster. Online migration is only available for
MySQL, PostgreSQL, and Redis clusters.
contents to the target cluster. If the existing database is continuously being written to,
the migration process will continue for up to two weeks unless it is manually stopped. Online migration is only available for
[MySQL](https://docs.digitalocean.com/products/databases/mysql/how-to/migrate/#:~:text=To%20migrate%20a%20MySQL%20database,then%20select%20Set%20Up%20Migration), [PostgreSQL](https://docs.digitalocean.com/products/databases/postgresql/how-to/migrate/), and [Redis](https://docs.digitalocean.com/products/databases/redis/how-to/migrate/) clusters.
tags:
- Databases
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,24 @@ type: object

properties:
redis_maxmemory_policy:
$ref: "../eviction_policy_model.yml"
type: string
enum:
- noeviction
- allkeys-lru
- allkeys-random
- volatile-lru
- volatile-random
- volatile-ttl
description: |2-
A string specifying the desired eviction policy for the Redis cluster.
- `noeviction`: Don't evict any data, returns error when memory limit is reached.
- `allkeys-lru:` Evict any key, least recently used (LRU) first.
- `allkeys-random`: Evict keys in a random order.
- `volatile-lru`: Evict keys with expiration only, least recently used (LRU) first.
- `volatile-random`: Evict keys with expiration only in a random order.
- `volatile-ttl`: Evict keys with expiration only, shortest time-to-live (TTL) first.
example: allkeys-lru
redis_pubsub_client_output_buffer_limit:
description: >-
Set output buffer limit for pub / sub clients in MB. The value is the hard
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ properties:
description: The current status of the migration.
enum:
- running
- syncing
- canceled
- error
- done
Expand Down
3 changes: 3 additions & 0 deletions specification/resources/databases/models/source_database.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
type: object

required:
- source

properties:
source:
type: object
Expand Down
Loading

0 comments on commit 289b0bf

Please sign in to comment.