Autonomy dokumentatsioon
HTTP API v1

Vead

Käsitle HTTP API suletud veakoodide hulka ja struktureeritud üksikasju.

Toimingu vead kasutavad ühte JSON-ümbrist:

Codejson
1{2  "error": {3    "code": "INVALID_ARGUMENT",4    "message": "Human-readable explanation",5    "details": {}6  }7}

code ja message on alati olemas. details on valikuline ning sisaldab konkreetse vea masinloetavat konteksti.

Veakoodid

KoodHTTP olekTähendus
INVALID_ARGUMENT400JSON või toimingu argument on vigane, sealhulgas puuduv nõutud kinnitus.
UNAUTHENTICATED401Beareri mandaat puudub või on kehtetu.
FORBIDDEN403Kutsuja on autenditud, kuid tal pole õigust, või allkirjastatud tõendilink on kehtetu või aegunud.
NOT_FOUND404Taotletud ressurssi või tõendimeediat ei ole kutsuja organisatsioonis.
CONFLICT409Mutatsioon on olemasoleva olekuga vastuolus, näiteks keskkonna slug on juba kasutusel.
LIMIT_REACHED402Organisatsiooni mahu- või õigusepiirang takistab toimingut.
UNAVAILABLE503Nõutud teenus või ressurss pole ajutiselt saadaval.

Ootamatud sisemised vead puhastatakse sama UNAVAILABLE koodi ja sõnumiga The operation could not be completed., kuid tagastavad HTTP 500. Ära sõltu sisemise erindi tekstist.

Vigane JSON või JSON-juur, mis pole objekt, tagastab 400 INVALID_ARGUMENT. 401 vastus sisaldab ka WWW-Authenticate väljakutset.

Kinnituse üksikasjad

Asendamistoimingud tagastavad kirjutamise asemel eelvaate, kui confirm: true on nõutud. Näiteks test_case.update_steps võib tagastada:

Kinnitus nõutudjson
1{2  "error": {3    "code": "INVALID_ARGUMENT",4    "message": "Replacing all Test Case steps requires confirm: true.",5    "details": {6      "confirmRequired": true,7      "wouldChange": {8        "stepCountBefore": 4,9        "stepCountAfter": 610      }11    }12  }13}

test_plan.set_members annab väljad wouldChange.removed ja wouldChange.added. environment.upsert annab edastatud fields ja sihtmärkide platforms. Vaata eelvaade üle ning korda sama kavandatud mutatsiooni väärtusega confirm: true ja sama idempotencyKey-ga.

Mandaadiväärtuse valvuri üksikasjad

test_case.create ja test_case.update_steps lükkavad tagasi literaali, mis sihib mandaadivälja või näeb välja nagu saladus. Viga nimetab sammu, rakendunud reegli ja ohutud alternatiivid:

Ebaturvaline literaaljson
1{2  "error": {3    "code": "INVALID_ARGUMENT",4    "message": "Literal credentials and secret-shaped values must use an Environment value or an Agent-chosen value.",5    "details": {6      "stepIndex": 0,7      "rule": "field",8      "alternatives": [9        {10          "kind": "environment",11          "variables": [12            "LOGIN_EMAIL",13            "LOGIN_PASSWORD"14          ]15        },16        {17          "kind": "agent"18        }19      ],20      "escape": "credential"21    }22  }23}

Kasuta valueSpec: { "kind": "environment", "variable": "LOGIN_PASSWORD" }, kui väärtus on keskkonnas juba olemas, või valueSpec: { "kind": "agent" }, kui käitaja peaks selle valima.

Uue literaali teisaldamiseks keskkonna saladuseks saada literaalne valueSpec koos väljaga credential.environmentSlug. See pääsetee nõuab ka õigust autonomy:environments:write; muidu tagastab API 403 FORBIDDEN koos nõutud õiguse ja väljaga stepIndex üksikasjades. Edukas teisaldamine kirjutab salvestatud sammu ümber keskkonnaviiteks ja loetleb teisaldamise mutatsiooni vastuses.

On this page