API delle sorgenti degli spazi di lavoro
Gestisci i repository montati in uno spazio di lavoro. Per i riferimenti ai repository, usa gli identificativi restituiti dall’API.
Usa Autenticazione API per le richieste protette. Gli esempi usano i tuoi ID di risorse e un token temporaneo; gli esempi di risposte salvate sono sintetici.
| Metodo | Percorso | Operazione |
|---|---|---|
GET | /v1/workspace_source | Elenca le sorgenti dello spazio di lavoro |
POST | /v1/workspace_source | Crea una sorgente dello spazio di lavoro |
GET | /v1/workspace_source/{id} | Ottieni una sorgente dello spazio di lavoro |
PUT | /v1/workspace_source/{id} | Aggiorna una sorgente dello spazio di lavoro |
DELETE | /v1/workspace_source/{id} | Elimina una sorgente dello spazio di lavoro |
Elenca le sorgenti dello spazio di lavoro
GET /v1/workspace_source
Restituisce un elenco paginato di WorkspaceSource
Autenticazione: token bearer e intestazione del team mostrate di seguito.
Parametri
| Nome | Posizione | Obbligatorio | Descrizione |
|---|---|---|---|
X-Tenant-ID | header | Sì | ID del team attivo. Deve corrispondere al tenant a cui è vincolato il token diagnostico. |
page | query | No | Numero di pagina |
per_page | query | No | Elementi per pagina |
Esempio di richiesta
Imposta ADIOS_API_URL=https://api.adios.dev. Per le richieste protette, imposta ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID come nel guida rapida. Imposta le eventuali variabili aggiuntive ADIOS_* con i valori ottenuti dalle tue risorse.
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"
Risposta: HTTP 200
Elenco di WorkspaceSource
Campi di risposta
| Campo | Tipo | Descrizione |
|---|---|---|
data | array | |
data[].alias | string | |
data[].branch | string | |
data[].commit | string | |
data[].created_at | integer | (timestamp Unix) |
data[].deleted_at | integer | (timestamp Unix) |
data[].external_auth_ref | string | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui |
data[].external_connection_id | string | |
data[].external_provider | string | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. |
data[].external_repository_url | string | |
data[].internal_repository_id | string | Repository autorevole in Adios Git |
data[].internal_repository_url | string | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
data[].last_synced_at | integer | (timestamp Unix) |
data[].metadata | object | |
data[].mount | string | |
data[].repository_path | string | |
data[].role | string | Valori consentiti: primary, include. |
data[].source_key | string | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro |
data[].status | string | Valori consentiti: active, archived. |
data[].sync_direction | string | Valori consentiti: none, pull, push, bidirectional. |
data[].sync_error | object | |
data[].sync_status | string | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. |
data[].team_id | string | |
data[].updated_at | integer | (timestamp Unix) |
data[].workspace_id | string | |
data[].workspace_source_id | string | |
pagination | object | |
pagination.page | integer | Numero di pagina attuale |
pagination.per_page | integer | Numero di elementi per pagina |
pagination.total | integer | Numero totale di elementi |
Esempio illustrativo; non è una risposta dal vivo:
{
"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
}
}
Crea una sorgente dello spazio di lavoro
POST /v1/workspace_source
Crea un nuovo oggetto WorkspaceSource
Questa richiesta modifica dati o avvia un’azione. Controlla la destinazione e il corpo prima dell’invio.
Campi di richiesta (il corpo contiene un esempio modificabile):
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
alias | string | Sì | |
branch | string | Sì | Valore predefinito: "main". |
commit | string | No | Valore predefinito: "". |
external_auth_ref | string | No | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui. Valore predefinito: "". |
external_connection_id | string | No | Valore predefinito: "". |
external_provider | string | Sì | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. Valore predefinito: "none". |
external_repository_url | string | No | Valore predefinito: "". |
internal_repository_id | string | Sì | Repository autorevole in Adios Git |
internal_repository_url | string | Sì | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
last_synced_at | integer | No | (timestamp Unix) Valore predefinito: 0. |
metadata | object | No | |
mount | string | Sì | Valore predefinito: ".". |
repository_path | string | Sì | Valore predefinito: ".". |
role | string | Sì | Valori consentiti: primary, include. Valore predefinito: "include". |
source_key | string | Sì | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro. Valore predefinito: "". |
status | string | Sì | Valori consentiti: active, archived. Valore predefinito: "active". |
sync_direction | string | Sì | Valori consentiti: none, pull, push, bidirectional. Valore predefinito: "none". |
sync_error | object | No | Valore predefinito: "". |
sync_status | string | Sì | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. Valore predefinito: "internal_only". |
team_id | string | Sì | |
workspace_id | string | Sì |
Autenticazione: token bearer e intestazione del team mostrate di seguito.
Parametri
| Nome | Posizione | Obbligatorio | Descrizione |
|---|---|---|---|
X-Tenant-ID | header | Sì | ID del team attivo. Deve corrispondere al tenant a cui è vincolato il token diagnostico. |
Esempio di richiesta
Imposta ADIOS_API_URL=https://api.adios.dev. Per le richieste protette, imposta ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID come nel guida rapida. Imposta le eventuali variabili aggiuntive ADIOS_* con i valori ottenuti dalle tue risorse.
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
Sostituisci YOUR_* nel corpo prima dell’invio. L’heredoc tra virgolette mantiene il JSON letterale.
Risposta: HTTP 201
WorkspaceSource creato
Campi di risposta
| Campo | Tipo | Descrizione |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | integer | (timestamp Unix) |
deleted_at | integer | (timestamp Unix) |
external_auth_ref | string | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui |
external_connection_id | string | |
external_provider | string | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repository autorevole in Adios Git |
internal_repository_url | string | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
last_synced_at | integer | (timestamp Unix) |
metadata | object | |
mount | string | |
repository_path | string | |
role | string | Valori consentiti: primary, include. |
source_key | string | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro |
status | string | Valori consentiti: active, archived. |
sync_direction | string | Valori consentiti: none, pull, push, bidirectional. |
sync_error | object | |
sync_status | string | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | integer | (timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Esempio illustrativo; non è una risposta dal vivo:
{
"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"
}
Ottieni una sorgente dello spazio di lavoro
GET /v1/workspace_source/{id}
Restituisce un oggetto WorkspaceSource
Imposta workspace_source_id usando gli ID restituiti dalle tue risposte API.
Autenticazione: token bearer e intestazione del team mostrate di seguito.
Parametri
| Nome | Posizione | Obbligatorio | Descrizione |
|---|---|---|---|
id | path | Sì | Identificativo della risorsa ottenuto dai risultati API del tuo team. |
X-Tenant-ID | header | Sì | ID del team attivo. Deve corrispondere al tenant a cui è vincolato il token diagnostico. |
Esempio di richiesta
Imposta ADIOS_API_URL=https://api.adios.dev. Per le richieste protette, imposta ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID come nel guida rapida. Imposta le eventuali variabili aggiuntive ADIOS_* con i valori ottenuti dalle tue risorse.
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"
Risposta: HTTP 200
WorkspaceSource
Campi di risposta
| Campo | Tipo | Descrizione |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | integer | (timestamp Unix) |
deleted_at | integer | (timestamp Unix) |
external_auth_ref | string | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui |
external_connection_id | string | |
external_provider | string | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repository autorevole in Adios Git |
internal_repository_url | string | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
last_synced_at | integer | (timestamp Unix) |
metadata | object | |
mount | string | |
repository_path | string | |
role | string | Valori consentiti: primary, include. |
source_key | string | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro |
status | string | Valori consentiti: active, archived. |
sync_direction | string | Valori consentiti: none, pull, push, bidirectional. |
sync_error | object | |
sync_status | string | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | integer | (timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Esempio illustrativo; non è una risposta dal vivo:
{
"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"
}
Aggiorna una sorgente dello spazio di lavoro
PUT /v1/workspace_source/{id}
Aggiorna un oggetto WorkspaceSource esistente
Imposta workspace_source_id usando gli ID restituiti dalle tue risposte API.
Questa richiesta modifica dati o avvia un’azione. Controlla la destinazione e il corpo prima dell’invio.
Campi di richiesta (il corpo contiene un esempio modificabile):
| Campo | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
alias | string | Sì | |
branch | string | Sì | Valore predefinito: "main". |
commit | string | No | Valore predefinito: "". |
external_auth_ref | string | No | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui. Valore predefinito: "". |
external_connection_id | string | No | Valore predefinito: "". |
external_provider | string | Sì | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. Valore predefinito: "none". |
external_repository_url | string | No | Valore predefinito: "". |
internal_repository_id | string | Sì | Repository autorevole in Adios Git |
internal_repository_url | string | Sì | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
last_synced_at | integer | No | (timestamp Unix) Valore predefinito: 0. |
metadata | object | No | |
mount | string | Sì | Valore predefinito: ".". |
repository_path | string | Sì | Valore predefinito: ".". |
role | string | Sì | Valori consentiti: primary, include. Valore predefinito: "include". |
source_key | string | Sì | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro. Valore predefinito: "". |
status | string | Sì | Valori consentiti: active, archived. Valore predefinito: "active". |
sync_direction | string | Sì | Valori consentiti: none, pull, push, bidirectional. Valore predefinito: "none". |
sync_error | object | No | Valore predefinito: "". |
sync_status | string | Sì | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. Valore predefinito: "internal_only". |
team_id | string | Sì | |
workspace_id | string | Sì |
Autenticazione: token bearer e intestazione del team mostrate di seguito.
Parametri
| Nome | Posizione | Obbligatorio | Descrizione |
|---|---|---|---|
id | path | Sì | Identificativo della risorsa ottenuto dai risultati API del tuo team. |
X-Tenant-ID | header | Sì | ID del team attivo. Deve corrispondere al tenant a cui è vincolato il token diagnostico. |
Esempio di richiesta
Imposta ADIOS_API_URL=https://api.adios.dev. Per le richieste protette, imposta ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID come nel guida rapida. Imposta le eventuali variabili aggiuntive ADIOS_* con i valori ottenuti dalle tue risorse.
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
Sostituisci YOUR_* nel corpo prima dell’invio. L’heredoc tra virgolette mantiene il JSON letterale.
Risposta: HTTP 200
WorkspaceSource aggiornato
Campi di risposta
| Campo | Tipo | Descrizione |
|---|---|---|
alias | string | |
branch | string | |
commit | string | |
created_at | integer | (timestamp Unix) |
deleted_at | integer | (timestamp Unix) |
external_auth_ref | string | Solo un riferimento alle credenziali; i valori segreti non vengono mai conservati qui |
external_connection_id | string | |
external_provider | string | Valori consentiti: none, github, gitlab, bitbucket, ssh, git. |
external_repository_url | string | |
internal_repository_id | string | Repository autorevole in Adios Git |
internal_repository_url | string | URL di clonazione privo di credenziali per il repository Adios Git autorevole |
last_synced_at | integer | (timestamp Unix) |
metadata | object | |
mount | string | |
repository_path | string | |
role | string | Valori consentiti: primary, include. |
source_key | string | Identità logica priva di credenziali usata per riutilizzare un repository interno in più spazi di lavoro |
status | string | Valori consentiti: active, archived. |
sync_direction | string | Valori consentiti: none, pull, push, bidirectional. |
sync_error | object | |
sync_status | string | Valori consentiti: internal_only, pending, synced, ahead, behind, diverged, error. |
team_id | string | |
updated_at | integer | (timestamp Unix) |
workspace_id | string | |
workspace_source_id | string |
Esempio illustrativo; non è una risposta dal vivo:
{
"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"
}
Elimina una sorgente dello spazio di lavoro
DELETE /v1/workspace_source/{id}
Elimina un oggetto WorkspaceSource
Imposta workspace_source_id usando gli ID restituiti dalle tue risposte API.
Questa richiesta modifica dati o avvia un’azione. Controlla la destinazione e il corpo prima dell’invio.
Autenticazione: token bearer e intestazione del team mostrate di seguito.
Parametri
| Nome | Posizione | Obbligatorio | Descrizione |
|---|---|---|---|
id | path | Sì | Identificativo della risorsa ottenuto dai risultati API del tuo team. |
X-Tenant-ID | header | Sì | ID del team attivo. Deve corrispondere al tenant a cui è vincolato il token diagnostico. |
Esempio di richiesta
Imposta ADIOS_API_URL=https://api.adios.dev. Per le richieste protette, imposta ADIOS_ACCESS_TOKEN e ADIOS_TEAM_ID come nel guida rapida. Imposta le eventuali variabili aggiuntive ADIOS_* con i valori ottenuti dalle tue risorse.
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"
Risposta: HTTP 200
Risorsa eliminata.
Campi di risposta
| Campo | Tipo | Descrizione |
|---|---|---|
message | string |
Esempio illustrativo; non è una risposta dal vivo:
{
"message": "Deleted successfully"
}