AppZen Documents API
The Documents API from AppZen — 1 operation(s) for documents.
The Documents API from AppZen — 1 operation(s) for documents.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/appzen-documents-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Autonomous AP APIs Chart of Accounts Documents API
description: Public APIs for integrating with Autonomous AP
version: 2.0.3
servers:
- url: https://<env>.appzen.com/dictionary-data-services
security:
- API Key Header: []
Customer Id Header: []
Customer Key Header: []
tags:
- name: Documents
paths:
/generate-upload-url:
get:
tags:
- Documents
summary: Generates a url to upload a document into AppZen repository.
description: "This is first part of a two part process for uploading a document into AppZen repository.\n1) Generate URL\n ```\n\n curl --location \\\n --request GET 'https://<api-gateway-url>/dictionary-data-services/generate-upload-url' \\\n --header 'x-api-key: <x-api-key>' \\\n --header 'customer-id: <customer-id>' \\\n --header 'customer-key: <customer-key>'\n\n ```\n2) The JSON reponse contains three elements.\n A `uuid` field contains the identifier of the document to be uploaded.\n An `url` field is a one-time unique URL.\n An `expires` field is the expiration timestamp of the url field. Example JSON response:\n ```\n {\n \"url\": \"https://<download-link>\",\n \"uuid\": \"5fc03087-d265-11e7-b8c6-83e29cd24f4c\",\n \"expires\": \"2021-02-23T22:20:47.636Z\"\n }\n ```\n\n3) Using the URL generated above, upload a document/attachment via an additional PUT API call, such as in the following example.\n A document attachment is limited to max size of 25MB.\n\n ```\n curl --location \\\n --request PUT 'https://<download-link>' \\\n --data-binary '@/<local_file_path>/Attachment_012.pdf'\n ```\n4) The uuid returned in 2), such as `5fc03087-d265-11e7-b8c6-83e29cd24f4c` in the example, can be used to link the attachment, to an invoice.\n"
responses:
200:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/signed-url-response'
400:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/http-400-error-response'
401:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/http-401-error-response'
403:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/http-403-error-response'
404:
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/http-404-error-response'
500:
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/http-500-error-response'
components:
schemas:
http-403-error-response:
type: object
properties:
timestamp:
type: string
example: 2019-01-17T16:12:45.977+0000
status:
type: string
example: 403
error:
type: string
example: Forbidden
message:
type: string
example: 'Error code : 17e3338d - You do not have permission to access this resource'
http-404-error-response:
type: object
properties:
timestamp:
type: string
example: 2019-01-17T16:12:45.977+0000
status:
type: string
example: 404
error:
type: string
example: Not Found
message:
type: string
example: 'Error code : 17e3338d - The resource you specified cannot be not found'
http-401-error-response:
type: object
properties:
timestamp:
type: string
example: 2019-01-17T16:12:45.977+0000
status:
type: string
example: 401
error:
type: string
example: Unauthorized
message:
type: string
example: 'Error code : 17e3338d - Unable to authenticate credentials'
http-500-error-response:
type: object
properties:
timestamp:
type: string
example: 2019-01-17T16:12:45.977+0000
status:
type: string
example: 500
error:
type: string
example: Internal Server Error
message:
type: string
example: 'Error code : 17e3338d - Unable to process your request at this moment, please try again later'
http-400-error-response:
type: object
properties:
timestamp:
type: string
example: 2019-01-17T16:12:45.977+0000
status:
type: string
example: 400
error:
type: string
example: Bad Request
message:
type: string
example: 'Error code : 17e3338d - Invalid request, please fix and resend'
signed-url-response:
type: object
properties:
url:
type: string
example: http://download-link.appzen.com/Staged_Documents/0102/5fc03087-d265-11e7-b8c6-83e29cd24f4c/AEMB7W..<very-long-url>
uuid:
type: string
example: 5fc03087-d265-11e7-b8c6-83e29cd24f4c
expires:
type: string
example: '2021-02-23T22:20:47.636Z'
securitySchemes:
API_Key_Header:
type: apiKey
in: header
name: x-api-key
Customer_Id_Header:
type: apiKey
in: header
name: customer-id
Customer_Key_Header:
type: apiKey
in: header
name: customer-key