{"openapi":"3.0.0","info":{"description":"Cloudflare Images API — images v1+v2, keys, stats, variants.","version":[]},"servers":[{"description":"Cloudflare Images API — images v1+v2, keys, stats, variants.","url":"https://api.apirails.com/cloudflare-images"}],"paths":{"/client/v4/accounts/{accountId}/v1/images":{"get":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"continuation_token","in":"query","description":"Continuation token for a next page. List images V2 returns continuation_token","required":false,"schema":{"type":"string","example":""}},{"name":"creator","in":"query","description":"Internal user ID set within the creator field. Setting to empty string will return images where creator field is not set","required":false,"schema":{"type":"string","example":""}},{"name":"per_page","in":"query","description":"Number of items per page","required":false,"schema":{"type":"number","example":""}},{"name":"sort_order","in":"query","description":"Sorting order by upload time","required":false,"schema":{"type":"string","example":"","items":{"type":"string","enum":["asc","desc"]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images"},"summary":"Get a list of images","description":"Get a list of images","security":[{"bearerAuth":[]}]},"post":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images"},"summary":"Upload a new Image","description":"Upload a new Image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"creator":{"type":"string","description":"Can set the creator field with an internal user ID."},"file":{"type":"string","format":"binary","description":"An image binary data. Only needed when type is uploading a file.","required":true},"id":{"type":"string","description":"Optional Image Custom ID. Up to 1024 chars. Can include any number of subpaths, and utf8 characters. Cannot start nor end with a / (forward slash). Cannot be a UUID."},"metadata":{"type":"object","description":"User modifiable key-value store. Can use used for keeping references to another system of record for managing images.","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Indicates whether the image requires a signature token for the access.","enum":[true,false]},"url":{"type":"string","description":"A URL to fetch an image from origin. Only needed when type is uploading from a URL."}}},"example":{"creator":"","file":"(binary)","id":"","metadata":{},"requireSignedURLs":"","url":""}}}}}},"/client/v4/accounts/{accountId}/v1/images/{imageId}":{"get":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"imageId","in":"path","description":"Image identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images/{imageId}"},"summary":"Get an image data","description":"Get an image data","security":[{"bearerAuth":[]}]},"put":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"imageId","in":"path","description":"Image identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images/{imageId}"},"summary":"Direct upload a new Image","description":"Direct upload a new Image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"file":{"type":"string","format":"binary","description":"An image binary data. Only needed when type is uploading a file.","required":true},"url":{"type":"string","description":"A URL to fetch an image from origin. Only needed when type is uploading from a URL."}}},"example":{"file":"(binary)","url":""}}}}},"patch":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"imageId","in":"path","description":"Image identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images/{imageId}"},"summary":"Update an image","description":"Update an image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"creator":{"type":"string","description":"Image creator"},"metadata":{"type":"object","description":"Image metadata","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Required signed url","enum":[true,false]}}},"example":{"creator":"","metadata":{},"requireSignedURLs":""}}}}},"delete":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"imageId","in":"path","description":"Image identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images/{imageId}"},"summary":"Delete an image","description":"Delete an image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{accountId}/v1/images/{imageId}/blob":{"get":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"imageId","in":"path","description":"Image identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v1/images/{imageId}/blob"},"summary":"Get an image","description":"Get an image","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{accountId}/v2/images":{"get":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"continuation_token","in":"query","description":"Continuation token for a next page. List images V2 returns continuation_token","required":false,"schema":{"type":"string","example":""}},{"name":"creator","in":"query","description":"Internal user ID set within the creator field. Setting to empty string will return images where creator field is not set","required":false,"schema":{"type":"string","example":""}},{"name":"per_page","in":"query","description":"Number of items per page","required":false,"schema":{"type":"number","example":""}},{"name":"sort_order","in":"query","description":"Sorting order by upload time","required":false,"schema":{"type":"string","example":"","items":{"type":"string","enum":["asc","desc"]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v2/images"},"summary":"Get a list of images","description":"Get a list of images","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{accountId}/v2/images/direct_upload":{"post":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/v2/images/direct_upload"},"summary":"Create authenticated direct upload URL","description":"Create authenticated direct upload URL","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"expiry":{"type":"string","description":"The date after which the upload will not be accepted. Minimum: Now + 2 minutes."},"id":{"type":"string","description":"Optional Image Custom ID. Up to 1024 chars. Can include any number of subpaths, and utf8 characters. Cannot start nor end with a / (forward slash). Cannot be a UUID."},"metadata":{"type":"object","description":"User modifiable key-value store. Can use used for keeping references to another system of record for managing images.","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Indicates whether the image requires a signature token for the access.","enum":[true,false]}}},"example":{"expiry":"","id":"","metadata":{},"requireSignedURLs":""}}}}}},"/client/v4/accounts/{accountId}/zones/{zoneId}/v1/images/flows":{"get":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"zoneId","in":"path","description":"Zone identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/zones/{zoneId}/v1/images/flows"},"summary":"Get transformation flows","description":"Get transformation flows","security":[{"bearerAuth":[]}]},"put":{"tags":["Images"],"parameters":[{"name":"accountId","in":"path","description":"Account identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"zoneId","in":"path","description":"Zone identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{accountId}/zones/{zoneId}/v1/images/flows"},"summary":"Update transformation flows","description":"Update transformation flows","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"etag":{"type":"string","description":"etag"},"flows":{"type":"array","description":"flows","required":true,"items":{"type":"object","properties":{}}},"version":{"type":"number","description":"version","required":true,"enum":[2]}}},"example":{"etag":"","flows":[],"version":""}}}}}},"/client/v4/accounts/{account_id}/images/v1":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"creator","in":"query","description":"Internal user ID set within the creator field. Setting to empty string \"\" will return images where creator field is not set","required":false,"schema":{"type":"string","example":""}},{"name":"page","in":"query","description":"Page number of paginated results.","required":false,"schema":{"type":"number","example":""}},{"name":"per_page","in":"query","description":"Number of items per page.","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1"},"summary":"List images","description":"List images","security":[{"bearerAuth":[]}]},"post":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1"},"summary":"Upload an image","description":"Upload an image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"creator":{"type":"string","description":"Can set the creator field with an internal user ID."},"file":{"type":"string","format":"binary","description":"An image binary data. Only needed when type is uploading a file.","required":true},"id":{"type":"string","description":"An optional custom unique identifier for your image."},"metadata":{"type":"object","description":"User modifiable key-value store. Can use used for keeping references to another system of record for managing images.","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Indicates whether the image requires a signature token for the access.","enum":[true,false]},"url":{"type":"string","description":"A URL to fetch an image from origin. Only needed when type is uploading from a URL."}}},"example":{"creator":"","file":"(binary)","id":"","metadata":{},"requireSignedURLs":"","url":""}}}}}},"/client/v4/accounts/{account_id}/images/v1/direct_upload":{"post":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/direct_upload"},"summary":"Create authenticated direct upload URL V1","description":"Create authenticated direct upload URL V1","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"expiry":{"type":"string","description":"The date after which the upload will not be accepted. Minimum: Now + 2 minutes. Maximum: Now + 6 hours."}}},"example":{"expiry":""}}}}}},"/client/v4/accounts/{account_id}/images/v1/keys":{"get":{"tags":["Keys"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/keys"},"summary":"List Signing Keys","description":"List Signing Keys","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v1/keys/{signing_key_name}":{"put":{"tags":["Keys"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"signing_key_name","in":"path","description":"signing key name","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/keys/{signing_key_name}"},"summary":"Create a new Signing Key","description":"Create a new Signing Key","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}},"delete":{"tags":["Keys"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"signing_key_name","in":"path","description":"signing key name","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/keys/{signing_key_name}"},"summary":"Delete Signing Key","description":"Delete Signing Key","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v1/stats":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/stats"},"summary":"Images usage statistics","description":"Images usage statistics","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v1/variants":{"get":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants"},"summary":"List variants","description":"List variants","security":[{"bearerAuth":[]}]},"post":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants"},"summary":"Create a variant","description":"Create a variant","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"id":{"type":"string","description":"id","required":true},"neverRequireSignedURLs":{"type":"boolean","description":"Indicates whether the variant can access an image without a signature, regardless of image access control.","enum":[true,false]},"options":{"type":"object","description":"Allows you to define image resizing sizes for different use cases.","required":true,"properties":{}}}},"example":{"id":"","neverRequireSignedURLs":"","options":{}}}}}}},"/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}":{"get":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"variant_id","in":"path","description":"variant id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}"},"summary":"Variant details","description":"Variant details","security":[{"bearerAuth":[]}]},"patch":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"variant_id","in":"path","description":"variant id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}"},"summary":"Update a variant","description":"Update a variant","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"neverRequireSignedURLs":{"type":"boolean","description":"Indicates whether the variant can access an image without a signature, regardless of image access control.","enum":[true,false]},"options":{"type":"object","description":"Allows you to define image resizing sizes for different use cases.","required":true,"properties":{}}}},"example":{"neverRequireSignedURLs":"","options":{}}}}}},"delete":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"variant_id","in":"path","description":"variant id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}"},"summary":"Delete a variant","description":"Delete a variant","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}/flat":{"get":{"tags":["Variants"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"variant_id","in":"path","description":"variant id","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/variants/{variant_id}/flat"},"summary":"Variant details (flat)","description":"Variant details (flat)","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v1/{image_id}":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"image_id","in":"path","description":"Image unique identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/{image_id}"},"summary":"Image details","description":"Image details","security":[{"bearerAuth":[]}]},"patch":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"image_id","in":"path","description":"Image unique identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/{image_id}"},"summary":"Update image","description":"Update image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"creator":{"type":"string","description":"Can set the creator field with an internal user ID."},"metadata":{"type":"object","description":"User modifiable key-value store. Can be used for keeping references to another system of record for managing images. No change if not specified.","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Indicates whether the image can be accessed using only its UID. If set to `true`, a signed token needs to be generated with a signing key to view the image. Returns a new UID on a change. No change if not specified.","enum":[true,false]}}},"example":{"creator":"","metadata":{},"requireSignedURLs":""}}}}},"delete":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"image_id","in":"path","description":"Image unique identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/{image_id}"},"summary":"Delete image","description":"Delete image","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v1/{image_id}/blob":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"image_id","in":"path","description":"Image unique identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/{image_id}/blob"},"summary":"Download image","description":"Download image","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v2":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"continuation_token","in":"query","description":"Continuation token to fetch next page. Passed as a query param when requesting List V2 api endpoint.","required":false,"schema":{"type":"string","example":""}},{"name":"creator","in":"query","description":"Internal user ID set within the creator field. Setting to empty string \"\" will return images where creator field is not set","required":false,"schema":{"type":"string","example":""}},{"name":"meta.<field>[<operator>]","in":"query","description":"meta <field>[<operator>]","required":false,"schema":{"type":"string","example":""}},{"name":"per_page","in":"query","description":"Number of items per page","required":false,"schema":{"type":"number","example":""}},{"name":"sort_order","in":"query","description":"Sorting order by upload time","required":false,"schema":{"type":"string","example":"","items":{"type":"string","enum":["asc","desc"]}}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2"},"summary":"List images V2","description":"List images V2","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v2/direct_upload":{"post":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/direct_upload"},"summary":"Create authenticated direct upload URL V2","description":"Create authenticated direct upload URL V2","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":false,"content":{"multipart/form-data":{"schema":{"type":"object","required":[],"properties":{"creator":{"type":"string","description":"Can set the creator field with an internal user ID."},"expiry":{"type":"string","description":"The date after which the upload will not be accepted. Minimum: Now + 2 minutes. Maximum: Now + 6 hours."},"id":{"type":"string","description":"Optional Image Custom ID. Up to 1024 chars. Can include any number of subpaths, and utf8 characters. Cannot start nor end with a / (forward slash). Cannot be a UUID."},"metadata":{"type":"object","description":"User modifiable key-value store. Can be used for keeping references to another system of record, for managing images.","properties":{}},"requireSignedURLs":{"type":"boolean","description":"Indicates whether the image requires a signature token to be accessed.","enum":[true,false]}}},"example":{"creator":"","expiry":"","id":"","metadata":{},"requireSignedURLs":""}}}}}},"/client/v4/accounts/{account_id}/images/v2/metadata/keys":{"get":{"tags":["Images"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/metadata/keys"},"summary":"List image metadata keys","description":"List image metadata keys","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Maximum number of items to return.","required":false,"schema":{"type":"number","example":""}},{"name":"offset","in":"query","description":"Number of items to skip before returning results.","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations"},"summary":"List sourcing kit migrations","description":"List sourcing kit migrations","security":[{"bearerAuth":[]}]},"post":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations"},"summary":"Create a sourcing kit migration","description":"Create a sourcing kit migration","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"conflictBehaviour":{"type":"string","description":"How to handle objects that already exist at the destination.","enum":["skip","overwrite"]},"excludedContentTypes":{"type":"array","description":"Content types to skip during migration.","enum":["image/jpeg","image/png","image/webp","image/gif","image/avif","image/heic","image/svg+xml"],"items":{"type":"string"}},"pathPrefix":{"type":"string","description":"Prefix to prepend to image custom IDs."},"rootDirectory":{"type":"string","description":"Only import objects under this prefix in the source bucket."},"sourceId":{"type":"string","description":"The identifier of the source to migrate from.","required":true}}},"example":{"conflictBehaviour":"","excludedContentTypes":[],"pathPrefix":"","rootDirectory":"","sourceId":""}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}"},"summary":"Get sourcing kit migration","description":"Get sourcing kit migration","security":[{"bearerAuth":[]}]},"delete":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}"},"summary":"Delete a sourcing kit migration","description":"Delete a sourcing kit migration","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle"},"summary":"Get migration progress","description":"Get migration progress","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle/abort":{"patch":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle/abort"},"summary":"Abort a migration","description":"Abort a migration","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle/start":{"patch":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/lifecycle/start"},"summary":"Start a migration","description":"Start a migration","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/logs":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"migration_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Maximum number of items to return.","required":false,"schema":{"type":"number","example":""}},{"name":"offset","in":"query","description":"Number of items to skip before returning results.","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/migrations/{migration_id}/logs"},"summary":"List migration logs","description":"List migration logs","security":[{"bearerAuth":[]}]}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"limit","in":"query","description":"Maximum number of items to return.","required":false,"schema":{"type":"number","example":""}},{"name":"name","in":"query","description":"Filter sources by name (partial match).","required":false,"schema":{"type":"string","example":""}},{"name":"offset","in":"query","description":"Number of items to skip before returning results.","required":false,"schema":{"type":"number","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources"},"summary":"List sourcing kit sources","description":"List sourcing kit sources","security":[{"bearerAuth":[]}]},"post":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources"},"summary":"Create a sourcing kit source","description":"Create a sourcing kit source","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"account":{"type":"string","description":"Account identifier for the bucket (required for R2 vendor)."},"bucket":{"type":"string","description":"The name of the storage bucket.","required":true},"name":{"type":"string","description":"A human-readable name for the source.","required":true},"secret":{"type":"object","description":"Storage credentials for accessing the bucket. Shape depends on vendor.","required":true,"properties":{}},"vendor":{"type":"string","description":"The cloud storage vendor of the source bucket.","required":true,"enum":["s3","r2"]}}},"example":{"account":"","bucket":"","name":"","secret":{},"vendor":""}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/connectivity-precheck":{"post":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/connectivity-precheck"},"summary":"Precheck source connectivity","description":"Precheck source connectivity","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"account":{"type":"string","description":"Account identifier for the bucket (required for R2 vendor)."},"bucket":{"type":"string","description":"The name of the storage bucket.","required":true},"region":{"type":"string","description":"The region hint for the bucket (S3 only)."},"secret":{"type":"object","description":"Storage credentials for accessing the bucket.","required":true,"properties":{}},"vendor":{"type":"string","description":"The cloud storage vendor of the source bucket.","required":true,"enum":["s3","r2"]}}},"example":{"account":"","bucket":"","region":"","secret":{},"vendor":""}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"source_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}"},"summary":"Get sourcing kit source","description":"Get sourcing kit source","security":[{"bearerAuth":[]}]},"patch":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"source_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}"},"summary":"Update a sourcing kit source","description":"Update a sourcing kit source","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{"name":{"type":"string","description":"Updated name for the source.","required":true}}},"example":{"name":""}}}}},"delete":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"source_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}"},"summary":"Delete a sourcing kit source","description":"Delete a sourcing kit source","security":[{"bearerAuth":[]}],"requestBody":{"description":"","required":true,"content":{"application/json":{"schema":{"type":"object","required":[],"properties":{}},"example":{}}}}}},"/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}/connectivity":{"get":{"tags":["Sourcing Kit"],"parameters":[{"name":"account_id","in":"path","description":"Account identifier tag.","required":true,"schema":{"type":"string","example":""}},{"name":"source_id","in":"path","description":"Sourcing kit resource identifier.","required":true,"schema":{"type":"string","example":""}}],"responses":{"401":{"description":"Bearer token required (Authorization header)","content":{"application/json":{}}}},"externalDocs":{"api_ref":"https://developers.cloudflare.com/api/resources/images/","api_endpoint":"https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2/sourcingkit/sources/{source_id}/connectivity"},"summary":"Get source connectivity status","description":"Get source connectivity status","security":[{"bearerAuth":[]}]}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}},"security":[{"bearerAuth":[]}]}