API de fontes de espaços de trabalho
Gerencie os repositórios montados em um espaço de trabalho. Use identificadores retornados pela API para referenciar repositórios.
Usar Autenticação da API para pedidos protegidos. Exemplos usam seus próprios IDs de recursos e um token temporário; exemplos de resposta salvos são sintéticos.
| Método | Caminho | Operação |
|---|---|---|
GET | /v1/workspace_source | Listar as fontes do espaço de trabalho |
POST | /v1/workspace_source | Criar fonte do espaço de trabalho |
GET | /v1/workspace_source/{id} | Obter a fonte do espaço de trabalho |
PUT | /v1/workspace_source/{id} | Atualizar a fonte do espaço de trabalho |
DELETE | /v1/workspace_source/{id} | Excluir fonte do espaço de trabalho |
Listar as fontes do espaço de trabalho
GET /v1/workspace_source
Retorna uma lista paginada de WorkspaceSource
Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.
Parâmetros
| Nome | Localização | Obrigatório | Descrição |
|---|---|---|---|
X-Tenant-ID | cabeçalho | sim | ID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico. |
page | consulta | não | Número da página |
per_page | consulta | não | Itens por página |
Exemplo de requisição
Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/workspace_source" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Resposta: HTTP 200
Lista de WorkspaceSource
Campos de resposta
| Campo | Tipo | Descrição |
|---|---|---|
data | array | |
data[].alias | string | |
data[].branch | string | |
data[].commit | string | |
data[].created_at | inteiro | (Timestamp Unix) |
data[].deleted_at | inteiro | (Timestamp Unix) |
data[].external_auth_ref | string | Apenas referência à credencial; valores secretos nunca são persistidos aqui |
data[].external_connection_id | string | |
data[].external_provider | string | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. |
data[].external_repository_url | string | |
data[].internal_repository_id | string | Repositório de referência no Adios Git |
data[].internal_repository_url | string | URL de clonagem sem credenciais do repositório de referência no Adios Git |
data[].last_synced_at | inteiro | (Timestamp Unix) |
data[].metadata | objeto | |
data[].mount | string | |
data[].repository_path | string | |
data[].role | string | Valores permitidos: primary, include. |
data[].source_key | string | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho |
data[].status | string | Valores permitidos: active, archived. |
data[].sync_direction | string | Valores permitidos: none, pull, push, bidirectional. |
data[].sync_error | objeto | |
data[].sync_status | string | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. |
data[].team_id | string | |
data[].updated_at | inteiro | (Timestamp Unix) |
data[].workspace_id | string | |
data[].workspace_source_id | string | |
pagination | objeto | |
pagination.page | inteiro | Número da página atual |
pagination.per_page | inteiro | Número de itens por página |
pagination.total | inteiro | Número total de itens |
Exemplo ilustrativo; não é uma resposta real:
{
"data": [
{
"alias": "example",
"branch": "main",
"commit": "",
"created_at": 1791072000,
"deleted_at": 0,
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "000000000000000000000000001",
"internal_repository_url": "example",
"last_synced_at": 0,
"metadata": {},
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"workspace_id": "000000000000000000000000001",
"workspace_source_id": "000000000000000000000000001"
}
],
"pagination": {
"page": 1,
"per_page": 1,
"total": 1
}
}
Criar fonte do espaço de trabalho
POST /v1/workspace_source
Cria um novo objeto WorkspaceSource
Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.
Campos da requisição (o corpo contém um exemplo editável):
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
alias | string | sim | |
branch | string | sim | Padrão: "main". |
commit | string | não | Padrão: "". |
external_auth_ref | string | não | Apenas referência à credencial; valores secretos nunca são persistidos aqui. Padrão: "". |
external_connection_id | string | não | Padrão: "". |
external_provider | string | sim | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. Padrão: "none". |
external_repository_url | string | não | Padrão: "". |
internal_repository_id | string | sim | Repositório de referência no Adios Git |
internal_repository_url | string | sim | URL de clonagem sem credenciais do repositório de referência no Adios Git |
last_synced_at | inteiro | não | (Timestamp Unix) Padrão: 0. |
metadata | objeto | não | |
mount | string | sim | Padrão: ".". |
repository_path | string | sim | Padrão: ".". |
role | string | sim | Valores permitidos: primary, include. Padrão: "include". |
source_key | string | sim | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho. Padrão: "". |
status | string | sim | Valores permitidos: active, archived. Padrão: "active". |
sync_direction | string | sim | Valores permitidos: none, pull, push, bidirectional. Padrão: "none". |
sync_error | objeto | não | Padrão: "". |
sync_status | string | sim | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. Padrão: "internal_only". |
team_id | string | sim | |
workspace_id | string | sim |
Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.
Parâmetros
| Nome | Localização | Obrigatório | Descrição |
|---|---|---|---|
X-Tenant-ID | cabeçalho | sim | ID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico. |
Exemplo de requisição
Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.
curl --fail-with-body --request POST "$ADIOS_API_URL/v1/workspace_source" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"alias": "example",
"branch": "main",
"commit": "",
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "YOUR_INTERNAL_REPOSITORY_ID",
"internal_repository_url": "YOUR_INTERNAL_REPOSITORY_URL",
"last_synced_at": 0,
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "YOUR_TEAM_ID",
"workspace_id": "YOUR_WORKSPACE_ID"
}
JSON
Substitua YOUR_* no corpo antes de enviar. O heredoc com delimitador entre aspas mantém o JSON literal.
Resposta: HTTP 201
WorkspaceSource criado
Campos de resposta
| Campo | Tipo | Descrição |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | inteiro | (Timestamp Unix) |
deleted_at | inteiro | (Timestamp Unix) |
external_auth_ref | string | Apenas referência à credencial; valores secretos nunca são persistidos aqui |
external_connection_id | string | |
external_provider | string | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repositório de referência no Adios Git |
internal_repository_url | string | URL de clonagem sem credenciais do repositório de referência no Adios Git |
last_synced_at | inteiro | (Timestamp Unix) |
metadata | objeto | |
mount | string | |
repository_path | string | |
role | string | Valores permitidos: primary, include. |
source_key | string | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho |
status | string | Valores permitidos: active, archived. |
sync_direction | string | Valores permitidos: none, pull, push, bidirectional. |
sync_error | objeto | |
sync_status | string | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | inteiro | (Timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Exemplo ilustrativo; não é uma resposta real:
{
"alias": "example",
"branch": "main",
"commit": "",
"created_at": 1791072000,
"deleted_at": 0,
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "000000000000000000000000001",
"internal_repository_url": "example",
"last_synced_at": 0,
"metadata": {},
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"workspace_id": "000000000000000000000000001",
"workspace_source_id": "000000000000000000000000001"
}
Obter a fonte do espaço de trabalho
GET /v1/workspace_source/{id}
Retorna um objeto WorkspaceSource
Defina workspace_source_id usando IDs das suas próprias respostas da API.
Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.
Parâmetros
| Nome | Localização | Obrigatório | Descrição |
|---|---|---|---|
id | caminho | sim | Identificador de recurso dos resultados da API da sua equipe. |
X-Tenant-ID | cabeçalho | sim | ID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico. |
Exemplo de requisição
Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.
curl --fail-with-body --request GET "$ADIOS_API_URL/v1/workspace_source/${ADIOS_WORKSPACE_SOURCE_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Resposta: HTTP 200
WorkspaceSource
Campos de resposta
| Campo | Tipo | Descrição |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | inteiro | (Timestamp Unix) |
deleted_at | inteiro | (Timestamp Unix) |
external_auth_ref | string | Apenas referência à credencial; valores secretos nunca são persistidos aqui |
external_connection_id | string | |
external_provider | string | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repositório de referência no Adios Git |
internal_repository_url | string | URL de clonagem sem credenciais do repositório de referência no Adios Git |
last_synced_at | inteiro | (Timestamp Unix) |
metadata | objeto | |
mount | string | |
repository_path | string | |
role | string | Valores permitidos: primary, include. |
source_key | string | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho |
status | string | Valores permitidos: active, archived. |
sync_direction | string | Valores permitidos: none, pull, push, bidirectional. |
sync_error | objeto | |
sync_status | string | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | inteiro | (Timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Exemplo ilustrativo; não é uma resposta real:
{
"alias": "example",
"branch": "main",
"commit": "",
"created_at": 1791072000,
"deleted_at": 0,
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "000000000000000000000000001",
"internal_repository_url": "example",
"last_synced_at": 0,
"metadata": {},
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"workspace_id": "000000000000000000000000001",
"workspace_source_id": "000000000000000000000000001"
}
Atualizar a fonte do espaço de trabalho
PUT /v1/workspace_source/{id}
Atualiza um objeto WorkspaceSource existente
Defina workspace_source_id usando IDs das suas próprias respostas da API.
Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.
Campos da requisição (o corpo contém um exemplo editável):
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
alias | string | sim | |
branch | string | sim | Padrão: "main". |
commit | string | não | Padrão: "". |
external_auth_ref | string | não | Apenas referência à credencial; valores secretos nunca são persistidos aqui. Padrão: "". |
external_connection_id | string | não | Padrão: "". |
external_provider | string | sim | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. Padrão: "none". |
external_repository_url | string | não | Padrão: "". |
internal_repository_id | string | sim | Repositório de referência no Adios Git |
internal_repository_url | string | sim | URL de clonagem sem credenciais do repositório de referência no Adios Git |
last_synced_at | inteiro | não | (Timestamp Unix) Padrão: 0. |
metadata | objeto | não | |
mount | string | sim | Padrão: ".". |
repository_path | string | sim | Padrão: ".". |
role | string | sim | Valores permitidos: primary, include. Padrão: "include". |
source_key | string | sim | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho. Padrão: "". |
status | string | sim | Valores permitidos: active, archived. Padrão: "active". |
sync_direction | string | sim | Valores permitidos: none, pull, push, bidirectional. Padrão: "none". |
sync_error | objeto | não | Padrão: "". |
sync_status | string | sim | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. Padrão: "internal_only". |
team_id | string | sim | |
workspace_id | string | sim |
Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.
Parâmetros
| Nome | Localização | Obrigatório | Descrição |
|---|---|---|---|
id | caminho | sim | Identificador de recurso dos resultados da API da sua equipe. |
X-Tenant-ID | cabeçalho | sim | ID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico. |
Exemplo de requisição
Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.
curl --fail-with-body --request PUT "$ADIOS_API_URL/v1/workspace_source/${ADIOS_WORKSPACE_SOURCE_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID" \
-H "Content-Type: application/json" \
--data-binary @- <<'JSON'
{
"alias": "example",
"branch": "main",
"commit": "",
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "YOUR_INTERNAL_REPOSITORY_ID",
"internal_repository_url": "YOUR_INTERNAL_REPOSITORY_URL",
"last_synced_at": 0,
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "YOUR_TEAM_ID",
"workspace_id": "YOUR_WORKSPACE_ID"
}
JSON
Substitua YOUR_* no corpo antes de enviar. O heredoc com delimitador entre aspas mantém o JSON literal.
Resposta: HTTP 200
WorkspaceSource atualizado
Campos de resposta
| Campo | Tipo | Descrição |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | inteiro | (Timestamp Unix) |
deleted_at | inteiro | (Timestamp Unix) |
external_auth_ref | string | Apenas referência à credencial; valores secretos nunca são persistidos aqui |
external_connection_id | string | |
external_provider | string | Valores permitidos: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repositório de referência no Adios Git |
internal_repository_url | string | URL de clonagem sem credenciais do repositório de referência no Adios Git |
last_synced_at | inteiro | (Timestamp Unix) |
metadata | objeto | |
mount | string | |
repository_path | string | |
role | string | Valores permitidos: primary, include. |
source_key | string | Identidade lógica sem credenciais usada para reutilizar um repositório interno em vários espaços de trabalho |
status | string | Valores permitidos: active, archived. |
sync_direction | string | Valores permitidos: none, pull, push, bidirectional. |
sync_error | objeto | |
sync_status | string | Valores permitidos: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | inteiro | (Timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Exemplo ilustrativo; não é uma resposta real:
{
"alias": "example",
"branch": "main",
"commit": "",
"created_at": 1791072000,
"deleted_at": 0,
"external_auth_ref": "",
"external_connection_id": "",
"external_provider": "none",
"external_repository_url": "",
"internal_repository_id": "000000000000000000000000001",
"internal_repository_url": "example",
"last_synced_at": 0,
"metadata": {},
"mount": ".",
"repository_path": ".",
"role": "include",
"source_key": "",
"status": "active",
"sync_direction": "none",
"sync_error": "",
"sync_status": "internal_only",
"team_id": "000000000000000000000000001",
"updated_at": 1791072000,
"workspace_id": "000000000000000000000000001",
"workspace_source_id": "000000000000000000000000001"
}
Excluir fonte do espaço de trabalho
DELETE /v1/workspace_source/{id}
Exclui um objeto WorkspaceSource
Defina workspace_source_id usando IDs das suas próprias respostas da API.
Esta requisição altera dados ou inicia uma ação. Confira o destino e o corpo antes de enviá-la.
Autenticação: token bearer e o cabeçalho de equipe mostrado abaixo.
Parâmetros
| Nome | Localização | Obrigatório | Descrição |
|---|---|---|---|
id | caminho | sim | Identificador de recurso dos resultados da API da sua equipe. |
X-Tenant-ID | cabeçalho | sim | ID da equipe ativa. Deve corresponder ao tenant vinculado a um token de diagnóstico. |
Exemplo de requisição
Defina ADIOS_API_URL=https://api.adios.dev. Para requisições protegidas, defina ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID como na início rápido. Defina quaisquer variáveis adicionais ADIOS_* variáveis dos seus próprios resultados de recursos.
curl --fail-with-body --request DELETE "$ADIOS_API_URL/v1/workspace_source/${ADIOS_WORKSPACE_SOURCE_ID}" \
-H "Authorization: Bearer $ADIOS_ACCESS_TOKEN" \
-H "X-Tenant-ID: $ADIOS_TEAM_ID"
Resposta: HTTP 200
O recurso foi apagado.
Campos de resposta
| Campo | Tipo | Descrição |
|---|---|---|
message | string |
Exemplo ilustrativo; não é uma resposta real:
{
"message": "Deleted successfully"
}