Auth Key bearbeiten
Aktualisiert bei einem Auth Key die Beschreibung, die Scopes oder den Aktivierungsstatus.
https://api2.transloadit.com/ auth_keys/ {authKeyId}Der Wert eines Auth Keys kann nicht direkt geändert werden. Um ihn zu rotieren, erstellen Sie einen neuen Auth Key, aktualisieren Sie Ihre Integration und deaktivieren oder löschen Sie anschließend den alten Auth Key. Bestehende Werte bleiben gültig, wenn Sie Beschreibungen, Scopes oder andere Einstellungen aktualisieren.
Ein Auth Key mit aktiviertem Smart CDN kann auch gewöhnliche API-Anfragen authentifizieren und Bearer-Tokens ausstellen. Durch die Aktivierung von Smart CDN erhält er keine zusätzlichen Scopes: Gewähren Sie nur die Berechtigungen, die Ihre Integration benötigt. Bewahren Sie das Auth Secret auf Ihrem Server auf. Sie können separate Auth Keys verwenden, wenn Integrationen unabhängige Berechtigungen oder einen unabhängigen Widerruf benötigen.
Setzen Sie notification_signature_algo, um eine zusätzliche, stärkere Webhook-Signatur zu aktivieren. Dies ist unabhängig von der Signierung von API-Anfragen und lässt die bisherige SHA-1-Formularsignatur unverändert.
Beispielanfrage
Setzen Sie AUTH_KEY_ID auf den Wert Ihrer Ressource, ohne ihn prozentzukodieren.
Führen Sie diese Anfrage in einer serverseitigen Shell mit curl aus und verwenden Sie dazu ein geeignetes Bearer-Token in TRANSLOADIT_TOKEN. Falls Sie ein Token benötigen, klappen Sie die folgende Anleitung zur Einrichtung auf.
Benötigen Sie ein Bearer-Token?
Setzen Sie in einer vertrauenswürdigen serverseitigen Shell mit curl und jq TRANSLOADIT_KEY und TRANSLOADIT_SECRET auf Ihren Auth Key bzw. Ihr Auth Secret. Halten Sie beide Zugangsdaten und das daraus erzeugte Token geheim; führen Sie diese Einrichtung niemals in Browsercode aus.
Erstellen Sie zuerst ein Token mit den für diesen Endpunkt erforderlichen Scopes. Ihr Auth Key muss diese Scopes bereits gewähren.
if ! TOKEN_RESPONSE="$(curl --fail-with-body -sS \
--request POST \
--url 'https://api2.transloadit.com/token' \
--user "${TRANSLOADIT_KEY:?Set TRANSLOADIT_KEY}:${TRANSLOADIT_SECRET:?Set TRANSLOADIT_SECRET}" \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'aud=api2' \
--data-urlencode 'scope=auth_keys:write')"; then
printf '%s\n' "$TOKEN_RESPONSE" >&2
exit 1
fi
TRANSLOADIT_TOKEN="$(printf '%s' "$TOKEN_RESPONSE" |
jq -er '.access_token | strings | select(length > 0)')" || exit 1
Lassen Sie diese Shell geöffnet und führen Sie die folgende Anfrage aus. Verwenden Sie das Token erneut, solange es gültig ist.
curl --fail-with-body -sS --request PUT \
--url "https://api2.transloadit.com/auth_keys/${AUTH_KEY_ID:?Set AUTH_KEY_ID}" \
--header "Authorization: Bearer ${TRANSLOADIT_TOKEN:?Set TRANSLOADIT_TOKEN}" \
--data-urlencode 'params={"description":"Updated backend integration"}'
Authentifizierung
Dieser Endpunkt akzeptiert signierte params oder ein Bearer-Token. Anweisungen zur Einrichtung finden Sie unter Authentifizierung.
Erforderlicher Berechtigungsumfang für Auth Key oder Bearer-Token: auth_keys:write.
Signierte Anfragen erfordern sowohl eine signature als auch einen in der Zukunft liegenden Zeitstempel für params.auth.expires. Bearer-Tokens erfordern keines von beiden.
Pfadparameter
authKeyId(Pfadsegment), erforderlich. Muster:^[0-9a-f]{32}$, minimale Länge: 32, maximale Länge: 32
Formularfelder
Content-Type: application/x-www-form-urlencoded
params(JSON-Zeichenfolge), erforderlich. Ein JSON-codiertes Objekt, dessen unterstützte Schlüssel unten aufgeführt sind.signature(Zeichenfolge). Für signierte Anfragen erforderlich. Lassen Sie dieses Feld weg, wenn Sie ein Bearer-Token verwenden.
Unterstützte Schlüssel im Feld params
Die Authentifizierungsfelder in dieser Liste gelten für signierte Anfragen. Mit einem Bearer-Token können Sie params.auth und das separate Feld signature weglassen. Vergleichen Sie unten die Anfrageparameter der einzelnen Authentifizierungsmethoden.
Vollständiges JSON Schema
params: Es werden nur die für dieses Objekt aufgeführten Felder akzeptiert.
| Feld | Typ und Beschreibung |
|---|---|
params.für signierte Anfragen erforderlich; mit einem Bearer-Token optional | Enthält den Transloadit-API-Schlüssel und Metadaten für die Signature Authentication einer Auth-Keys-Anfrage.
|
params.erforderlich | stringISO-8601-Ablaufzeitstempel in der Zukunft. Erforderlich, wenn eine Anfrage signiert ist oder Signaturauthentifizierung erfordert; mit Bearer authentifizierte Anfragen können ihn weglassen. |
params.erforderlich | stringTransloadit API-Schlüssel zur Authentifizierung von Anfragen |
params. | string (maximale Länge: 255)Menschenlesbare Beschreibung des Auth Key. Zeichen außerhalb der Basic Multilingual Plane von Unicode, darunter die meisten Emojis, werden nicht unterstützt. Validierungsmuster (regulärer Ausdruck)^[\u0000-\ud7ff\ue000-\uffff]*$ |
params. | boolean | 0 | 1Gibt an, ob dieser Auth Key aktiv ist. |
params. | boolean | 0 | 1Ob dieser Auth Key zusätzlich zu gewöhnlichen API-Anfragen und der Ausstellung von Bearer-Tokens auch Smart CDN-URLs authentifizieren kann. Jeder Vorgang erfordert weiterhin seinen eigenen Scope. Beim Erstellen gilt bei Auslassung der Standardwert false. Beim Aktualisieren bleibt bei Auslassung der aktuelle Wert erhalten; senden Sie ausdrücklich false, um die Nutzung von Smart CDN zu deaktivieren. |
params. | string | integerEindeutiger Zufallswert, der in die Parameter signierter Anfragen aufgenommen wird, damit jede Signatur eindeutig ist und nicht versehentlich wiederverwendet werden kann. |
params. | "sha256" | "sha384" | nullAlgorithmus für den zusätzlichen Webhook-Header Transloadit-Signature. Das bisherige Formularfeld für die SHA-1-Signatur bleibt unverändert. Der Standardwert ist null (kein zusätzlicher Header). Bei einer Aktualisierung bleibt der aktuelle Wert erhalten, wenn das Feld weggelassen wird; null deaktiviert den zusätzlichen Header. Unabhängig von der Signierung von API-Anfragen. |
params. | stringDurch Kommas getrennte Scopes des Auth Keys. API2 normalisiert doppelte Scopes. Validierungsmuster (regulärer Ausdruck)^(?:[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*,)*[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*(?:,[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*(?:(?:read|write|auth_keys:write|auth_keys:read|assemblies:write|assemblies:read|assembly_notifications:write|dam:read|dam:write|template_credentials:read|template_credentials:write|billing:read|queues:read|smart_cdn:sign|templates:read|templates:write|storage_grants:write)[\x09-\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]*)?)*$ |
params. | "sha1" | "sha256" | "sha384" | nullHMAC-Algorithmus zum Signieren von Anfragen mit diesem Auth Key. Bei der Erstellung verwenden gewöhnliche API-Schlüssel standardmäßig |
Anfrageparameter nach Authentifizierungsmethode
Mit signierten Parametern
Geben Sie Ihren Auth Key als params.auth.key an. Wenn Sie die Anfrage signieren, geben Sie einen in der Zukunft liegenden Zeitstempel für params.auth.expires an und senden Sie die Signature im separaten Feld signature. Die folgenden Felddefinitionen verwenden Pfade innerhalb von params.
Vollständiges JSON Schema
params: Es werden nur die für dieses Objekt aufgeführten Felder akzeptiert.
Verwendet die oben angegebenen Felddefinitionen: params.auth, params.description, params.is_active, params.is_allowed_for_smartcdn, params.nonce, params.notification_signature_algo, params.scope, params.signature_algo
Mit einem Bearer-Token
Senden Sie das Bearer-Token im Authorization-Header. Sie können params.auth und das separate Feld signature weglassen. Die übrigen erforderlichen Parameter müssen weiterhin angegeben werden. Die folgenden Felddefinitionen verwenden Pfade innerhalb von params.
Vollständiges JSON Schema
params: Es werden nur die für dieses Objekt aufgeführten Felder akzeptiert.
Verwendet die oben angegebenen Felddefinitionen: params.description, params.is_active, params.is_allowed_for_smartcdn, params.nonce, params.notification_signature_algo, params.scope, params.signature_algo
| Feld | Typ und Beschreibung |
|---|---|
params. | Enthält den Transloadit-API-Schlüssel und Metadaten für die Signature Authentication einer Auth-Keys-Anfrage.
|
params. | stringISO-8601-Ablaufzeitstempel in der Zukunft. Erforderlich, wenn eine Anfrage signiert ist oder Signaturauthentifizierung erfordert; mit Bearer authentifizierte Anfragen können ihn weglassen. |
params. | stringTransloadit API-Schlüssel zur Authentifizierung von Anfragen |
Antwort
2xx-Erfolg
JSON-Response-Body. application/json text/plain; charset=utf-8
Schema des Response-Bodys
Vollständiges JSON Schema
Die Antwort kann zusätzliche Felder enthalten.
| Feld | Typ und Beschreibung |
|---|---|
auth_keyerforderlich |
|
auth_key.erforderlich | string | null (maximale Länge: 64)Validierungsmuster (regulärer Ausdruck)^[\u0000-\ud7ff\ue000-\uffff]*$ |
auth_key.erforderlich | boolean |
auth_key.erforderlich | string | nullZeitpunkt der Erstellung des Auth Keys als ISO-8601-Zeitstempel oder null, wenn kein Erstellungszeitpunkt erfasst wurde. Validierungsmuster (regulärer Ausdruck)^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\.[0-9]+)?)?(Z)$ |
auth_key.erforderlich | string (maximale Länge: 255)Validierungsmuster (regulärer Ausdruck)^[\u0000-\ud7ff\ue000-\uffff]*$ |
auth_key.erforderlich | string |
auth_key.erforderlich | boolean |
auth_key.erforderlich | boolean |
auth_key.erforderlich | string | nullUngefährer Zeitpunkt der letzten Verwendung als ISO-8601-Zeitstempel oder null, wenn kein Zeitstempel erfasst wurde. Die Nutzung wird asynchron erfasst und stapelweise gespeichert, daher kann dieser Wert hinter den Anfragen zurückliegen. Dies ist kein exakter Audit-Zeitstempel, und null beweist nicht, dass der Schlüssel nie verwendet wurde. Validierungsmuster (regulärer Ausdruck)^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\.[0-9]+)?)?(Z)$ |
auth_key.erforderlich | string | nullZeitpunkt der letzten Aktualisierung der Auth-Key-Einstellungen als ISO-8601-Zeitstempel oder null, wenn kein Änderungszeitpunkt erfasst wurde. Die Nutzung wird separat in Validierungsmuster (regulärer Ausdruck)^(([0-9][0-9][2468][048]|[0-9][0-9][13579][26]|[0-9][0-9]0[48]|[02468][048]00|[13579][26]00)-02-29|[0-9]{4}-((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01])|(0[469]|11)-(0[1-9]|[12][0-9]|30)|(02)-(0[1-9]|1[0-9]|2[0-8])))T([01][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9](\.[0-9]+)?)?(Z)$ |
auth_key. | "sha256" | "sha384" | nullAlgorithmus für den zusätzlichen Webhook-Header Transloadit-Signature. Das bisherige Formularfeld für die SHA-1-Signatur bleibt unverändert. Der Standardwert ist null (kein zusätzlicher Header). Bei einer Aktualisierung bleibt der aktuelle Wert erhalten, wenn das Feld weggelassen wird; null deaktiviert den zusätzlichen Header. Unabhängig von der Signierung von API-Anfragen. |
auth_key.erforderlich | string | null (maximale Länge: 512)Validierungsmuster (regulärer Ausdruck)^[\u0000-\ud7ff\ue000-\uffff]*$ |
auth_key.erforderlich | null | string |
messageerforderlich | string (minimale Länge: 1) |
okerforderlich | string (immer: "AUTH_KEY_UPDATED") |
Fehlerantwort
JSON-Response-Body. application/json text/plain; charset=utf-8
Schema des Response-Bodys
Vollständiges JSON Schema
Die Antwort kann zusätzliche Felder enthalten.
| Feld | Typ und Beschreibung |
|---|---|
assembly_id | string |
error | string (minimale Länge: 1) |
http_code | number | string
|
message | stringMenschenlesbare Erklärung des Fehlers. Die Formulierung kann variieren; verwenden Sie den Code |
reason | null | string | number | boolean | Array<beliebiger Wert> | objectEines der folgenden Schemas kann gelten: nullstringnumberbooleanArray<beliebiger Wert>Array<beliebiger Wert>Schema eines Array-Elementsbeliebiger WertobjectobjectSchema für zusätzliche Eigenschaftenbeliebiger Wert |
HTTP 400
JSON-Response-Body. application/json text/plain; charset=utf-8
Schema des Response-Bodys
Vollständiges JSON Schema
Benannte Fehler und das allgemeine Fehlerformat
error: "AUTH_KEY_NOT_UPDATED"
Ihr Auth Key konnte nicht aktualisiert werden.
Die Antwort kann zusätzliche Felder enthalten.