SVG edit
Edits an input SVG from inline SVG markup or a remote/base64 SVG source.
/v1/svgs/editsAuthorizationBearer token · headerrequiredAuthentication via Bearer token API key
x-trace-idstringOptional client-supplied trace identifier. The API echoes this value in X-Trace-ID and includes it in request logs for client-side correlation.
application/jsonmax_review_stepsintegerMaximum edit review and redo steps after the initial edit.
modelstringrequiredModel identifier to use for editing.
promptstringrequiredInstruction describing how to edit the source SVG.
reasoning_effortstringReasoning effort applied to this editing. When omitted, Arrow uses its default.
lowmediumhighxhighreference_imagesImageInputReferenceInput[] | nullOptional image references for the edit.
Show propertiesHide properties
ImageInputReferenceInputurlstring<uri>requiredNetwork image URL. Only http/https URLs are allowed. The API fetches the URL, follows up to 3 redirects, blocks private or reserved network targets, requires an image response content type, and applies the same decoded image limits as base64 inputs.
base64stringrequiredBase64-encoded image payload. Decoded images must be no larger than 12582912 bytes, 4096x4096 pixels, or 16777216 total pixels. Accepted direct media types: image/png, image/jpeg, image/webp, image/gif, image/svg+xml.
string<uri>settingsEditSettings | nullShow propertiesHide properties
max_output_tokensinteger | nullUpper bound for final edit output token count.
orchestrator_max_output_tokensinteger | nullOptional provider orchestrator token budget.
shallow_max_output_tokensinteger | nullOptional provider shallow edit token budget.
temperaturenumber | nullEdit sampling temperature.
streambooleanWhen true, emits a Server-Sent Events stream.
svgstringrequiredInline SVG markup to edit.
svg_sourcenullmax_review_stepsintegerMaximum edit review and redo steps after the initial edit.
modelstringrequiredModel identifier to use for editing.
promptstringrequiredInstruction describing how to edit the source SVG.
reasoning_effortstringReasoning effort applied to this editing. When omitted, Arrow uses its default.
lowmediumhighxhighreference_imagesImageInputReferenceInput[] | nullOptional image references for the edit.
Show propertiesHide properties
ImageInputReferenceInputurlstring<uri>requiredNetwork image URL. Only http/https URLs are allowed. The API fetches the URL, follows up to 3 redirects, blocks private or reserved network targets, requires an image response content type, and applies the same decoded image limits as base64 inputs.
base64stringrequiredBase64-encoded image payload. Decoded images must be no larger than 12582912 bytes, 4096x4096 pixels, or 16777216 total pixels. Accepted direct media types: image/png, image/jpeg, image/webp, image/gif, image/svg+xml.
string<uri>settingsEditSettings | nullShow propertiesHide properties
max_output_tokensinteger | nullUpper bound for final edit output token count.
orchestrator_max_output_tokensinteger | nullOptional provider orchestrator token budget.
shallow_max_output_tokensinteger | nullOptional provider shallow edit token budget.
temperaturenumber | nullEdit sampling temperature.
streambooleanWhen true, emits a Server-Sent Events stream.
svgnullsvg_sourceobjectrequiredShow propertiesHide properties
objectWhen stream is false, returns application/json with the edited SVG. When stream is true, returns Server-Sent Events ending with data: [DONE]. Token-priced models report measured totals in usage and omit credits. Fixed-credit models retain compatibility token totals of 0 and report credits.
createdintegerrequiredcreditsintegerCredit cost for fixed-credit models. Omitted for token-priced models, whose measured totals are returned in usage.
dataSvgDocument[]requiredShow propertiesHide properties
SvgDocumentmime_typestringrequiredimage/svg+xmlsvgstringrequiredRaw SVG markup.
idstringrequiredusageSvgUsageToken totals for token-priced models. Fixed-credit models use credits for billing and may report compatibility zeros here.
Show propertiesHide properties
input_tokensintegerrequiredMeasured token count for token-priced models. Fixed-credit models retain this field for compatibility and may report zero.
output_tokensintegerrequiredMeasured token count for token-priced models. Fixed-credit models retain this field for compatibility and may report zero.
total_tokensintegerrequiredMeasured token count for token-priced models. Fixed-credit models retain this field for compatibility and may report zero.
Bad request – malformed body, missing required fields, or invalid parameter values.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredUnauthorized – missing, malformed, revoked, otherwise invalid API credentials, or an organization that could not be resolved for billing.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredPayment required – the organization has insufficient credits, or a funding payment has not settled.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredForbidden – the account is frozen, the request is not allowed, or content policy rejected the request.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredNot found – the requested model does not exist, or the endpoint path and method are not served.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredRequest timeout – the request exceeded an allowed client-facing deadline.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredPayload too large – the submitted prompt, image, or SVG input is too large.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredUnsupported media type – the request body arrived without a JSON Content-Type, so it could not be read.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredRate limit exceeded – request throughput or measured input/output token usage exhausted a binding ceiling. operation_rate_limit_exceeded identifies operation throughput; rate_limit_exceeded covers overall request and token rates. X-RateLimit-Dimension names the exact dimension. When Retry-After is present, retry after the indicated period.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredThe request could not be completed. Please retry.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredBad gateway – model execution returned an invalid or failed response.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredService unavailable – model execution is temporarily unavailable.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequiredGateway timeout – model execution exceeded the server deadline.
codestringrequiredinvalid_requestinvalid_api_keyunauthorizedfunding_payment_failedfunding_payment_method_requiredfunding_payment_action_requiredfunding_pendinginsufficient_creditsaccount_frozencontent_policy_violationmodel_not_foundpayload_too_largerequest_timeoutrate_limit_exceededoperation_rate_limit_exceededweekly_limit_exceededserver_errormodel_errormodel_unavailablemessagestringrequiredparamstringThe request parameter the failure is about, as a path from the request body root: size.width, input[0].content. A parameter name, never a submitted value. The same field, with the same meaning, as param on the Open Responses error payload, so one name reads across a failure raised before streaming and one raised during it. Absent, rather than null, when the failure is not about one particular parameter.
request_idstringrequiredretry_afterintegerstatusintegerrequired