{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"c170733b-d244-4ea6-8f28-976071c3cb46","name":"Vidcorp API V2 - Deprecated, please visit docs.tallbob.com","description":"This is the official API documentation for Vidcorp.\n\nBelow you will find a current list of the available endpoints for use with the Vidcorp API. You will need a Vidcorp account and valid API credentials in order to use the API. These will be different in each available environment (Sandbox/Production) and can be managed within the appropriate Vidcorp settings page, depending on which environment you are in.\n\n* for Sandbox accounts, go to [https://testing.vidcorp.com](https://testing.vidcorp.com)\n* for Production accounts, go to [https://cm.vidcorp.com/](https://cm.vidcorp.com/)\n\nFrom the settings menu on the top right, select **API Credentials** to manage them.\n\n\n\n# Base URLs\n\n| Base URL                           | Purpose             |\n|------------------------------------|---------------------|\n| https://api-testing.vidcorp.com/v2 | Sandbox for Testing |\n| https://api.vidcorp.com/v2         | Production          |\n\nIt should be noted that all the endpoints and examples used in this document (and associated Postman Collection) have been hard-coded to be using the Sandbox Base URL.\n\n# Authentication\nBasic HTTP authentication should be used in the header:\n* `username` - your API username\n* `password` - your API key\n\n_You can get your API credentials by logging into Vidcorp, as outlined above._\n\nPlease ensure you keep your **Production API key** a secret - if it is compromised for any reason, simply generate a new one and ensure you have updated your API clients to use your updated credentials. Instructions for creating Basic Auth headers can be found [here](https://en.wikipedia.org/wiki/Basic_access_authentication#Client_side)\n\n## Required Headers\nApart from the above authentication header, you will also need include the following when making API calls:\n\n`Content-type = application/json`\n\n\n\n# SMS Message Lengths\nA **standard** SMS message has a maximum of `160` characters. **Unicode** SMS messages are messages which contain characters not found in the [standard GSM 03.38](https://en.wikipedia.org/wiki/GSM_03.38) character set - these have a maximum of `70` characters.\n\nLonger messages are possible, however please be aware that exceeding these limits constitutes an \"additional\" SMS. Such messages are then split into what is called a \"multi-part\" message. Your recipient(s) will still see the message as one single, long message on their handset - but behind the scenes it has been split into these \"multi-part\" message segments, and billed accordingly.\n\n## Opt-out tags\nYou are required to add an opt-out message to the end of your message body if you are sending what would be considered a marketing message. This opt-out message can include the tag `{OptOutURL}` which is a placeholder that will add a link that can be clicked to opt-out. Please be aware that **expanding this tag into an actual link will increase the character count of your message** - potentially turning your message into a multi-part message.\n\nThere is a **hard limit of 1570 characters** in total, for your message.\n\n\n\n# Using a Sender ID\nAlphanumeric \"sender IDs\" are used for one-way, branded messaging. Instead of using an [E.164](https://electronics.howstuffworks.com/telephone-country-codes3.htm) formatted Vidcorp phone number, you can use a custom string value to match branding used by your business. Note: alphanumeric sender IDs are not available everywhere - when using them, please ensure you are sending to phone numbers in countries which support this feature.\n\nAlphanumeric sender IDs can be up to 11 characters and must include at least one letter and the following:\n* upper-case letters A-Z\n* lower-case letters a-z\n* numbers 0-9\n* spaces\nNon-ASCII special characters and punctuation are not allowed.\n\n\n## Timestamps\nAll dates and times are returned in the common [ISO 8601 format](https://en.wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations)\n\n\nIt is important to note that this includes Timezone information as well - all values are stored in [UTC](https://en.wikipedia.org/wiki/Coordinated_Universal_Time#Time_zones). You can also include optional timestamp parameters to your query, with some endpoints (see below)\n\n\n**Timestamps in Requests**\n\nThe format of the **timestamps** you can use in your requests is reasonably flexible... For example, `01/01/1970`, `2001-12-31`, `2002-10-20T12:26:13+00:00`, `last Monday` and `yesterday` are all examples of valid inputs for these types of request.\n\n# MMS File Types\nThe following file types are currently acceptable for sending via MMS. Please note the appropriate file extension should be used, in order to identify the file type.\n\n| File Extension | File Type       |\n|----------------|:---------------:|\n| .gif           | image/gif       |\n| .png           | image/png       |\n| .jpg, .jpeg    | image/jpeg      |\n| .mp3           | audio/mpeg      |\n| .wav           | audio/wav       |\n| .3gp           | audio/3gpp      |\n| .mp4           | video/mp4       |\n| .mpg, .mpeg    | video/mpeg      |\n| .avi           | video/avi       |\n| .pdf           | application/pdf |\n| .vcf, .vcard   | text/vcard      |\n| .cal           | text/calendar   |\n\n\n# Pagination\nSome endpoints return results which are paginated and you can include optional pagination parameters in your query. By default, the **first** page of **50** items will be returned. The maximum page size is **1000**.\n\n\n#### List Requests\n| Parameter | Description                                                                          |\n|-----------|--------------------------------------------------------------------------------------|\n| page      | the page number; defaults to 1                                                       |\n| per_page  | the number of items that one single page represents; defaults to 50; min 1; max 1000 |\n| after     | the timestamp that items should start from (inclusive)                               |\n| before    | the timestamp that items should be before (exclusive)                                |\n\n\n#### List Responses\n| Parameter     | Description                                          |\n|---------------|------------------------------------------------------|\n| total         | total number of resources available                  |\n| item_count    | number of resources returned                         |\n| current_page  | current page number                                  |\n| per_page      | number of resources returned per page                |\n| first_item    | number of the first resource in the current page     |\n| last_item     | number of the last resource in the current page      |\n| prev_page_url | a URL of the previous page - `null` if not available |\n| next_page_url | a URL of the next page - `null` if not available     |\n| data          | the actual resources, in an array                    |\n\n\n\n# REQUEST LIMITS\nThe API currently has a limit of 8MB for any individual request. If you need to send more than this you should split your data so that it can be sent across multiple requests that are no larger than this size.\n\n\n# HTTP STATUS CODES\nThe API will respond with one of the following HTTP status codes:\n\n| Status                                                | Status Code | Explanation                                                                                                                                                                  |\n|-------------------------------------------------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [OK](https://httpstatuses.com/200)                    | 200         | The request completed successfully (and returned results).                                                                                                                   |\n| [NO CONTENT](https://httpstatuses.com/204)            | 204         | The server has successfully fulfilled the request and there is no additional content to send in the response payload body.                                                   |\n| [BAD REQUEST](https://httpstatuses.com/400)           | 400         | The server cannot or will not process the request due to something that is perceived to be a client error (eg. malformed request syntax or invalid request message framing). |\n| [UNAUTHORISED](https://httpstatuses.com/401)          | 401         | Authentication credentials for the target resource were invalid.                                                                                                             |\n| [FORBIDDEN](https://httpstatuses.com/403)             | 403         | The server understood the request but refuses to allow it.                                                                                                                   |\n| [NOT FOUND](https://httpstatuses.com/404)             | 404         | The requested resource is invalid or does not exist.                                                                                                                         |\n| [METHOD NOT ALLOWED](https://httpstatuses.com/405)    | 405         | The method received in the request-line is not supported by the target resource.                                                                                             |\n| [TOO MANY REQUESTS](https://httpstatuses.com/429)     | 429         | The user has sent too many requests in a given amount of time (\"rate limiting\").                                                                                             |\n| [INTERNAL SERVER ERROR](https://httpstatuses.com/500) | 500         | We broke something - please let us know so we can fix it!                                                                                                                    |\n| [SERVICE UNAVAILABLE](https://httpstatuses.com/503)   | 503         | The server is currently experiencing a temporary overload or scheduled maintenance, which will likely be alleviated after a small delay.                                     |\n| [GATEWAY TIMEOUT](https://httpstatuses.com/504)       | 504         | The server was unable to produce a timely response in order to complete the request.                                                                                         |\n\n\n## CORS\nIf you are building your API client into a web app, you should specify the [CORS origins](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing#Request_headers) your app will be using.\n\n\n\n## Postman\nUse the button on the top right to download our API collection so you can test with the Postman app. Simply import the collection and create an environment with `username` and `password` variables to get started.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"2638524","team":687930,"collectionId":"c170733b-d244-4ea6-8f28-976071c3cb46","publishedId":"UV5UiyAw","public":true,"publicUrl":"https://docs.vidcorp.com","privateUrl":"https://go.postman.co/documentation/2638524-c170733b-d244-4ea6-8f28-976071c3cb46","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"007aff"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.0","publishDate":"2021-11-10T23:33:45.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/376c75477ee643ee2c40d249ea7f829465807748abd0bf2d5a80f05d1f29c40f","favicon":"https://res.cloudinary.com/postman/image/upload/v1645073512/team/i5bigimpofgerhlotq3u.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://docs.vidcorp.com/view/metadata/UV5UiyAw"}