+ First thing we build for Outline was its API. It’s the heart and soul + of the service and as developers, it’s our mission to make the API as + rich and easy to use as possible. +
++ + While Outline is still in public beta, we might make small + adjustments, including breaking changes to the API. + +
+
+ Outline’s API follows simple RPC style conventions where each API
+ endpoint is a method on{' '}
+ https://www.getoutline.com/api/<METHOD>
. Both{' '}
+ GET
and POST
methods are supported but it’s
+ recommeded that you make all call using POST
. Only HTTPS
+ is supported in production.
+
+ For GET
requests query string parameters are expected
+ (e.g.
+ /api/document.info?id=...&token=...
). When making{' '}
+ POST
requests, request parameters are parsed depending on{' '}
+ Content-Type
header. To make a call using JSON payload,
+ one must pass Content-Type: application/json
header:
+
+ Example POST request: +
+
+
+ {`curl https://www.getoutline.com/api/documents.info
+ -X POST
+ -H 'authorization: Bearer API_KEY'
+ -H 'content-type: application/json'
+ -H 'accept: application/json'
+ -d '{"id": "outline-api-NTpezNwhUP"}'
+`}
+
+
+
+ + Example GET request: +
+
+
+ {`curl https://www.getoutline.com/api/documents.info?id=outline-api-NTpezNwhUP&token=API_KEY
+`}
+
+
+
+ + To access private API endpoints, you must provide a valid API key. You + can create new API keys in your{' '} + account settings. Be + careful when handling your keys as they give access to all of your + documents. +
+ +
+ To authenticate with Outline API, you can supply the API key as a
+ header (Authorization: Bearer YOUR_API_KEY
) or as part of
+ the payload using token
parameter. If you're making{' '}
+ GET
requests, header based authentication is recommended
+ so that your keys don't leak into logs.
+
+ Some API endpoints allow unauhenticated requests for public resources + and they can be called without an API key. +
+ +
+ All successful API requests will be returned with 200
{' '}
+ status code and ok: true
in the response payload. If
+ there’s an error while making the request, appropriate status code is
+ returned with the error
message:
+
+
+ {`{
+ "ok": false,
+ "error: "Not Found"
+}
+`}
+
+
+
+ + This method returns information for a document with a specific + ID. Following identifiers are allowed: +
+id
field of the document
+ outline-api-i48ZEZc5zjXndcP
)
+ parentDocument
to set parent document.
+ ID
of the collection to which the document is
+ created
+
+ }
+ required
+ />
+ ID
of the parent document within the collection
+
+ }
+ />
+ {props.method}
- {props.label}
+
+ {`${process.env.URL}/api/${props.method}`}
+
{props.children}
+); + +type ArgumentsProps = { + pagination?: boolean, + children?: React.Element<*> | string, +}; + +const Arguments = (props: ArgumentsProps) => ( +Argument | +Required | +Description | +
{props.id}
+