PUT/POST method availability

The API documentation doesn’t mention any PUT/POST methods (or at least I can’t find any).

Will they be available at some point, to replace the xml-based system of submissions?

1 Like

Absolutely. The Companies House API is RESTful, and takes a resource approach to supplying information to Companies House over the traditional “file a form or transaction”. Not all data submissions to Companies House can be truly RESTfull, financial accounts for example, but in the main that is how the API will operate.

We’re currently progressing through a program of work to make data available through our new digital platform before we embark on receiving data. As a client, being able to GET data is usually the precursor to changing data at Companies House.

We don’t have a timeline for submission of data just yet, this is being worked out, however, future release features and timelines will be announced through this forum,.

Thanks, two further questions:

  1.  Currently, when doing submissions, we receive back from CH a submission-id. We use the submission-id to poll the status of the submission. It sounds like there will no need for a similar polling mechanism with the RESTful API, is that true? 
    
  2.  Our software displays submission forms using a CH-issued pdf template. If the pdf templates are discontinued, will CH make any recommendation on how to format submission data for display within software?

Two good questions!

In general, (company) information that you change will always be applied to the public register asynchronously, as it has to run through a number of complicated business rules and sometimes visual checking.

So we have to build a RESTful API over an asynchronous process.

It’s a bit tricky to explain the filing process in a quick forum post, but essentially, to keep your resource changes private until they are “accepted” by CH, you create a transaction resource and interact with resources within that transaction, all done in the spirit of REST of course. You still have to poll this transaction URI for the status of resource changes contained within it, certainly in the short term. Should a resource change be rejected, you can GET that from the transaction, correct and re-POST to re-submit. Far more flexible and useful than before.

On the subject of submitted data and presentation, we’re of the view that you are best place to know the presentation that works for you. Why should we decide that giving you a PDF is appropriate for your needs? Data is flexible, images are not. And you’re in a RESTful world - so you can GET the actual data that was accepted by CH right from the transaction resource that you created, and display that, the way you want, at any time. You built a screen or webpage to capture the information in the first place… this is probably not too far from a sensible layout for submitted data. At least a starting point.

The exceptions would be certificates of incorporation and other documents bearing the Companies House seal, which we might make available as PDF through an API endpoint. We’re considering the options.

Operations still appear to be GET only. Any updates on when PUT/POST will become available.

May thanks

Bob Hinton

can you please tell, how to submit data to companies house using confirmationstatement.xsd (LIVE)
GitHub - kevbite/CompaniesHouse.NET: A simple .NET client wrapper for CompaniesHouse API tells only how to get data. can you please guide me, how to post data (in ASP.NET )