All public APIs — page 93
Every API in the directory, 4,162 in all, best documented first.
AIception Interactive
Machine LearningHere you can play & test & prototype all the endpoints using just your browser! Go ahead!
Apacta
CalendarAPI for a tool to craftsmen used to register working hours, material usage and quality assurance. # Endpoint The endpoint `https://app.apacta.com/api/v1` should be used to communicate with the API. API access is only allowed with SSL encrypted connection (https). # Authentication URL query authentication with an API key is used, so appending `?api_key={api_key}` to the URL where `{api_key}` is found within Apacta settings is used for authentication # Pagination If the endpoint returns a `pagination` object it means the endpoint supports pagination - currently it's only possible to change pages with `?page={page_number}` but implementing custom page sizes are on the road map. # Search/filter Is experimental but implemented in some cases - see the individual endpoints' docs for further explanation. # Ordering Is currently experimental, but on some endpoints it's implemented on URL querys so eg. to order Invoices by `invoice_number` appending `?sort=Invoices.invoice_number&direction=desc` would sort the list descending by the value of `invoice_number`. # Associations Is currently implemented on an experimental basis where you can append eg. `?include=Contacts,Projects` to the `/api/v1/invoices/` endpoint to embed `Contact` and `Project` objects directly. # Project Files Currently project files can be retrieved from two endpoints. `/projects/{project_id}/files` handles files uploaded from wall posts or forms. `/projects/{project_id}/project_files` allows uploading and showing files, not belonging to specific form or wall post. # Errors/Exceptions ## 422 (Validation) Write something about how the `errors` object contains keys with the properties that failes validation like: ``` { "success": false, "data": { "code": 422, "url": "/api/v1/contacts?api_key=5523be3b-30ef-425d-8203-04df7caaa93a", "message": "A validation error occurred", "errorCount": 1, "errors": { "contact_types": [ ## Property name that failed validation "Contacts must have at least one contact type" ## Message with further explanation ] } } } ``` ## Code examples Running examples of how to retrieve the 5 most recent forms registered and embed the details of the User that made the form, and eventual products contained in the form ### Swift ``` ``` ### Java #### OkHttp ``` OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder() .url("https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5") .get() .addHeader("x-auth-token", "{INSERT_YOUR_TOKEN}") .addHeader("accept", "application/json") .build(); Response response = client.newCall(request).execute(); ``` #### Unirest ``` HttpResponse<String> response = Unirest.get("https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5") .header("x-auth-token", "{INSERT_YOUR_TOKEN}") .header("accept", "application/json") .asString(); ``` ### Javascript #### Native ``` var data = null; var xhr = new XMLHttpRequest(); xhr.addEventListener("readystatechange", function () { if (this.readyState === 4) { console.log(this.responseText); } }); xhr.open("GET", "https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5"); xhr.setRequestHeader("x-auth-token", "{INSERT_YOUR_TOKEN}"); xhr.setRequestHeader("accept", "application/json"); xhr.send(data); ``` #### jQuery ``` var settings = { "async": true, "crossDomain": true, "url": "https://app.apacta.com/api/v1/forms?extended=true&sort=Forms.created&direction=DESC&include=Products%2CCreatedBy&limit=5", "method": "GET", "headers": { "x-auth-token": "{INSERT_YOUR_TOKEN}", "accept": "application/json", } } $.ajax(settings).done(function (response) { console.log(response); }); ``` #### NodeJS (Request) ``` var request = require("request"); var options = { method: 'GET', url: 'https://app.apacta.com/api/v1/forms', qs: { extended: 'true', sort: 'Forms.created', direction: 'DESC', include:
Api2Pdf - PDF Generation, Powered by AWS Lambda
Development# Introduction [Api2Pdf](https://www.api2pdf.com) is a powerful PDF generation API with no rate limits or file size constraints. Api2Pdf runs on AWS Lambda, a serverless architecture powered by Amazon to scale to millions of requests while being up to 90% cheaper than alternatives. **Supports wkhtmltopdf, Headless Chrome, LibreOffice, and PDF Merge.** You can also generate barcodes with ZXING (Zebra Crossing). # SDKs & Client Libraries We've made a number of open source libraries available for the API - Python: [https://github.com/api2pdf/api2pdf.python](https://github.com/api2pdf/api2pdf.python) - .NET: [https://github.com/api2pdf/api2pdf.dotnet](https://github.com/api2pdf/api2pdf.dotnet) - Nodejs: [https://github.com/api2pdf/api2pdf.node](https://github.com/api2pdf/api2pdf.node) - PHP: [https://github.com/Api2Pdf/api2pdf.php](https://github.com/Api2Pdf/api2pdf.php) - Ruby: (Coming soon) # Authorization Create an account at [portal.api2pdf.com](https://portal.api2pdf.com/register) to get an API key. **Authorize your API calls** - GET requests, include apikey=YOUR-API-KEY as a query string parameter - POST requests, add **Authorization** to your header. ``` Authorization: YOUR-API-KEY ``` # Quickstart If you are looking for just a quick call to grab PDFs of a URL, you can do a GET request like: ``` https://v2018.api2pdf.com/chrome/url?url={UrlToConvert}&apikey={YourApiKey} ``` For more advanced usage and settings, see the API specification below.
API Endpoints
DevelopmentCreate beautiful product and API documentation with our developer friendly platform.
APIMATIC API Transformer
DevelopmentTransform API Descriptions from/to various formats
API v1
Text AnalysisDocSpring is a service that helps you fill out and sign PDF templates.
API v1.0.0
Finance[](https://app.getpostman.com/run-collection/80638214aa04722c9203) <span style='margin-left: 0.5em;'>or</span> <a href='https://documenter.getpostman.com/view/3559821/TVeqcn2L' class='openapi-button' _ngcontent-c6>View Postman docs</a> # Quickstart Visit [github](https://github.com/EmitKnowledge/Envoice) to view the quickstart tutorial. <div class='postman-tutorial'> # Tutorial for running the API in postman Click on ""Run in Postman"" button <br /><br />  --- A new page will open. Click the ""Postman for windows"" to run postman as a desktop app. Make sure you have already [installed](https://www.getpostman.com/docs/postman/launching_postman/installation_and_updates) Postman. <br /><br />  --- In chrome an alert might show up to set a default app for opening postman links. Click on ""Open Postman"". <br /><br />  --- The OpenAPI specification will be imported in Postman as a new collection named ""Envoice api"" <br /><br />  --- When testing be sure to check and modify the environment variables to suit your api key and secret. The domain is set to envoice's endpoint so you don't really need to change that. <sub>\*Eye button in top right corner </sub> <br /><br />  <br /><br />  --- You don't need to change the values of the header parameters, because they will be replaced automatically when you send a request with real values from the environment configured in the previous step. <br /><br />  --- Modify the example data to suit your needs and send a request. <br /><br />  </div> # Webhooks Webhooks allow you to build or set up Envoice Apps which subscribe to invoice activities. When one of those events is triggered, we'll send a HTTP POST payload to the webhook's configured URL. Webhooks can be used to update an external invoice data storage. In order to use webhooks visit [this link](/account/settings#api-tab) and add upto 10 webhook urls that will return status `200` in order to signal that the webhook is working. All nonworking webhooks will be ignored after a certain period of time and several retry attempts. If after several attempts the webhook starts to work, we will send you all activities, both past and present, in chronological order. The payload of the webhook is in format: ``` { Signature: ""sha256 string"", Timestamp: ""YYYY-MM-DDTHH:mm:ss.FFFFFFFZ"", Activity: { Message: "string", Link: "share url", Type: int, InvoiceNumber: "string", InvoiceId: int, OrderNumber: "string", OrderId: int, Id: int, CreatedOn: "YYYY-MM-DDTHH:mm:ss.FFFFFFFZ" } } ```
Barcode API
Text AnalysisGenerate Barcode images for a given barcode number. You can decode Barcode images and get the barcodes in a numberic form as well. Many industry standard barcode types are supported. The best and complete Barcode API on the cloud. [Click here to subscribe](http://fungenerators.com/api/barcode/)
BBC iPlayer Business Layer
MediaThe definitive iPlayer API.
BC Route Planner REST API
Open DataFinds shortest/fastest route between a start point and one or more stop points on British Columbia's public road network. The BC Route planner [webpage](https://www2.gov.bc.ca/gov/content?id=9D99E684CCD042CD88FADC51E079B4B5) provides additional information. Here are some geocoded addresses to play with:<br>18 Douglas St,Victoria -123.36962,48.40892<br>1002 Johnson St, Victoria -123.355745,48.426206<br>543 Johnson St, Victoria, BC -123.36907,48.42770 <br>14 Centennial Sq, Victoria, BC -123.36564,48.42863<br>1105 Royal Ave,New Westminster -122.92009,49.20063<br>808 Jackson Cres, New Westminster -122.90762,49.22558<br>10810 McDonald Rd, Chilliwack -121.93808,49.19859<br>3950 June Springs Rd, Kelowna -119.40751,49.83960<br>1201 Riondel Rd, Kootenay Bay -116.85402,49.74448<br>1201 Riondel Rd, Kootenay Bay -116.832759,49.730500 (parcelPoint)<br>2499 Walbran Pl, Courtenay -124.97295,49.71518<br>2013 Smoke Bluff Rd, Squamish -123.13946,49.70401<br>235 Kelvin Grove Way, Lions Bay -123.23524,49.45035<br> Please see our <a href=https://github.com/bcgov/api-specs/blob/master/COLLECTION_NOTICE.md#collection-notice target="_blank">data collection notice</a>. Please note that you may experience issues when submitting requests to the delivery or test environment if using this [OpenAPI specification](https://github.com/bcgov/api-specs) in other API console viewers. [API keys](https://api.gov.bc.ca/devportal/api-directory/740) are unique and can be acquired with a GitHub or IDIR account.
BeezUP Merchant API
Shopping# The REST API of BeezUP system ## Overview The REST APIs provide programmatic access to read and write BeezUP data. Basically, with this API you will be able to do everything like you were with your browser on https://go.beezup.com ! The main features are: - Register and manage your account - Create and manage and share your stores with your friends/co-workers. - Import your product catalog and schedule the auto importation - Search the channels your want to use - Configure your channels for your catalogs to export your product information: - cost and general settings - category and columns mappings - your will be able to create and manage your custom column - put in place exlusion filters based on simple conditions on your product data - override product values - get product vision for a channel catalog scope - Analyze and optimize your performance of your catalogs on all yours channels with different type of reportings by day, channel, category and by product. - Automatize your optimisation by using rules! - And of course... Manage your orders harvested from all your marketplaces: - Synchronize your orders in an uniformized way - Get the available actions and update the order status - ...and more! ## Authentication credentials The public API with the base path **/v2/public** have been put in place to give you an entry point to our system for the user registration, login and lost password. The public API does not require any credentials. We give you the some public list of values and public channels for our public commercial web site [www.beezup.com](http://www.beezup.com). The user API with the base path **/v2/user** requires a token which is available on this page: https://go.beezup.com/Account/MyAccount ## Things to keep in mind ### API Rate Limits - The BeezUP REST API is limited to 100 calls/minute. ### Media type The default media type for requests and responses is application/json. Where noted, some operations support other content types. If no additional content type is mentioned for a specific operation, then the media type is application/json. ### Required content type The required and default encoding for the request and responses is UTF8. ### Required date time format All our date time are formatted in ISO 8601 format: 2014-06-24T16:25:00Z. ### Base URL The Base URL of the BeezUP API Order Management REST API conforms to the following template. https://api.beezup.com All URLs returned by the BeezUP API are relative to this base URL, and all requests to the REST API must use this base URL template. You can test our API on https://api-docs.beezup.com/swagger-ui\\ You can contact us on [gitter, #BeezUP/API](https://gitter.im/BeezUP/API)
Bitbucket API
DevelopmentCode against the Bitbucket API to automate simple tasks, embed Bitbucket data into your own site, build mobile or desktop apps, or even add custom UI add-ons into Bitbucket itself using the Connect framework.
Bitculator
CryptocurrencyCrypto prices, OHLCV history, sentiment, technical indicators, exchanges and liquidations
BrandLovers Marketplace API V1
ShoppingAllows sellers to: 1) Load products definitions to the BrandLovers marktplace. 2) Receive and update orders status. 3) Receive and update shipping information. 4) Receive and update customer tickets. All requests consume and return application/json content. All request must be authenticated and use HTTPS.
Bulk WHOIS API
DevelopmentDomain API (WHOIS, Check, Batch)
Bungie.Net API
MediaThese endpoints constitute the functionality exposed by Bungie.net, both for more traditional website functionality and for connectivity to Bungie video games and their related functionality.
CarbonDoomsDay
Open DataA real-time RESTish web API for worldwide carbon dioxide levels.
Cloud-RF API
PhoneUse this JSON API to build and test radio links for any radio, anywhere. Authenticate with your API2.0 key in the request header as key
Coinremitter
CryptocurrencyCryptocurrencies Payment & Prices
CompanyAPI
BusinessAutomatisera onboarding, compliance och leverantörskontroll med tillförlitlig data, löpande övervakning och bättre beslutsunderlag.
Conjur
SecurityThis is an API definition for CyberArk Conjur Open Source. You can find out more at [Conjur.org](https://www.conjur.org/).
ContentGroove API
Machine Learning# Overview The ContentGroove Developer API enables you to add the power of ContentGroove's video AI to your own applications and workflows. Webhooks are a way for ContentGroove to send video information to your application, to update your system and/or trigger other business processes. You can use Webhooks and the Developer API separately or together. # Getting Started with Webhooks - Sign up for an account at [app.contentgroove.com](https://app.contentgroove.com) - Read "Using Webhooks" on the [API Reference page](https://developers.contentgroove.com/api_reference) - Visit the [Webhooks page](https://app.contentgroove.com/webhook_subscriptions) and create a new webhook # Using Webhooks Webhooks, also known as callbacks, are a way for ContentGroove to notify your application as soon as possible after an event has occurred in ContentGroove. For example after a media completes processing, ContentGroove can use a webhook to notify your application with information about the video: Suggested clips, transcription, and so on. You can use the information sent to update your system and/or use the webhook to trigger other business processes. The webhook request is sent as an HTTP POST containing a payload of JSON-formatted data. For the details of the payload format see the "CALLBACKS" sections below. When your application receives the webhook request, it must respond with a 200 HTTP status code (success). If a 200 HTTP status code is not returned, ContentGroove will assume that the webhook was not delivered and will retry a limited number of times, using an exponential backoff algorithm. ContentGroove makes a best effort to attempt to send the webhook at least once. Applications receiving webhooks must tolerate the possibility of a single webhook payload being sent more than once (idempotent behavior). Applications receiving webhooks should tolerate the possibility that a webhook could not be delivered (for example your application was down when delivery was attempted). # Getting Started with the Developer API - Sign up for an account at [app.contentgroove.com](https://app.contentgroove.com) - Visit the [API Keys page](https://app.contentgroove.com/api_keys) - Create a new API Key then copy and save the value. > ⚠️ **IMPORTANT**: This API Key is intended only for use on the server side. Be sure never to use a server-side API Key in client-side (web, mobile, or otherwise) code. ⚠️ - View all available endpoints, and try the API, on our [API Reference page](https://developers.contentgroove.com/api_reference) # Using the Developer API - Create a new media (video or audio) in ContentGroove - If the video or audio is available from a URL, you can create a media by providing the `source_url` parameter. ContentGroove will fetch the video or audio from the URL if possible. - Or, you can create a media from a video or audio file which you upload directly to ContentGroove (see File Uploading section below). - After the new media is created, at first it will be in a "processing" state. Depending on the size and duration of the video or audio file, it will take some time for processing to complete. - You can use ContentGroove Webhooks to be notified immediately when processing has completed. (Details coming soon.) - You can also use the API to read the state of the media, to determine if the media has completed processing yet. - After the media has completed processing, you can access all of these details about the media: - The media name and description - The transcription of spoken words - Topics and keywords which were discussed in the transcription - Suggested video clips are automatically created - In addition to the automatically created video clips, you can create more video clips from the media # Response Codes The following is a comprehensive list of the status codes you may receive while using the ContentGroove API: - 200 "Ok" - The request was valid - 400 "Bad Request - This is returned when there was a problem parsing the JSON body of
Contract.fit API
Text AnalysisThis OpenAPI describes the API exposed by the contract.fit backend. ## Security ### Authentication All endpoints are protected: you need to make authenticated calls. There are 3 authentication mechanisms: - HTTP Basic (Username + Password) - JWT Token - API-Key By default you should have an account allowing you to bootstrap your tenant and create users and roles, using Basic Auth or after creating a Token - see */auth* endpoints. If you are missing credentials or permissions, please [contact us](https://contract.fit/contact-us). ### Authorization The security system is RBAC based: users must be granted scoped roles, allowing them to access resources. Each role grants a defined set of permissions, which can be restricted to a given inbox or document - see */roles* endpoints. ## Upload and Processing Below is a short description of common use cases of the API. ### Simple Upload The easiest and simplest way to get started is to use POST /documents : it will make a synchronous upload of your file and wait for the result. This is a simplified version of POST /documents/{inbox_id} with less arguments and settings; it may not be suitable for real workload as it offers less capabilities. ### Upload to Inbox The favored endpoint to upload files is POST /documents/{inbox_id}: it is also highly recommended to make async call using sync=false. **Sync / Async** For convenience uploads can be synchronous: it will make the request blocks until the document is processed. It is however discouraged to rely on sync requests, as our service is designed to process documents asynchronously. You might run into timeouts and unprocessed document depending on factors such as server load and number of pending documents. Asynchronous calls will only schedule the processing and directly return the document ID without waiting: the document will be processed as soon as possible. You can then wait for the processed result using GET */documents/{document_id}*. ### Reprocessing You can reprocess a document using POST */documents/{document_id}/reprocess* : it will schedule an async processing of the document (note: it is not possible to make a sync reprocessing)
Contribly
SocialDiscover Contribly's platform to organise, verify, and publish community-generated content, enhancing engagement and trust in your newsroom.